[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 1/3] qom: new object to associate device to numa node
From: |
Markus Armbruster |
Subject: |
Re: [PATCH v2 1/3] qom: new object to associate device to numa node |
Date: |
Fri, 13 Oct 2023 15:16:52 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
<ankita@nvidia.com> writes:
> From: Ankit Agrawal <ankita@nvidia.com>
>
> The CPU cache coherent device memory can be added as NUMA nodes
> distinct from the system memory nodes. These nodes are associated
> with the device and Qemu needs a way to maintain this link.
>
> Introduce a new acpi-generic-initiator object to allow host admin
> provide the device and the corresponding NUMA node. Qemu maintain
> this association and use this object to build the requisite GI
> Affinity Structure.
>
> The admin provides the id of the device and the NUMA node id such
> as in the following example.
> -device vfio-pci-nohotplug,host=<bdf>,bus=pcie.0,addr=04.0,rombar=0,id=dev0 \
> -object acpi-generic-initiator,id=gi0,device=dev0,node=2 \
>
> Signed-off-by: Ankit Agrawal <ankita@nvidia.com>
[...]
> diff --git a/qapi/qom.json b/qapi/qom.json
> index fa3e88c8e6..86c87a161c 100644
> --- a/qapi/qom.json
> +++ b/qapi/qom.json
> @@ -779,6 +779,20 @@
> { 'struct': 'VfioUserServerProperties',
> 'data': { 'socket': 'SocketAddress', 'device': 'str' } }
>
> +##
> +# @AcpiGenericInitiatorProperties:
> +#
> +# Properties for acpi-generic-initiator objects.
> +#
> +# @device: the ID of the device to be associated with the node
> +#
> +# @node: the ID of the numa node
> +#
> +# Since: 8.0
Since 8.2
> +##
> +{ 'struct': 'AcpiGenericInitiatorProperties',
> + 'data': { 'device': 'str', 'node': 'uint32' } }
> +
> ##
> # @RngProperties:
> #
> @@ -947,7 +961,8 @@
> 'tls-creds-x509',
> 'tls-cipher-suites',
> { 'name': 'x-remote-object', 'features': [ 'unstable' ] },
> - { 'name': 'x-vfio-user-server', 'features': [ 'unstable' ] }
> + { 'name': 'x-vfio-user-server', 'features': [ 'unstable' ] },
> + 'acpi-generic-initiator'
Please keep the object types sorted alphabetically.
> ] }
>
> ##
> @@ -1014,7 +1029,8 @@
> 'tls-creds-x509': 'TlsCredsX509Properties',
> 'tls-cipher-suites': 'TlsCredsProperties',
> 'x-remote-object': 'RemoteObjectProperties',
> - 'x-vfio-user-server': 'VfioUserServerProperties'
> + 'x-vfio-user-server': 'VfioUserServerProperties',
> + 'acpi-generic-initiator': 'AcpiGenericInitiatorProperties'
Likewise.
> } }
>
> ##