[libvirt] [PATCH v4 02/10] Add iommu group number info to virPCIDevice
Michal Privoznik
mprivozn at redhat.com
Mon Nov 23 17:04:59 UTC 2015
On 14.11.2015 09:35, Shivaprasad G Bhat wrote:
> The iommu group number need not be fetched from the sysfs
> everytime as it remains constant. Fetch it once during
> allocation.
>
> Signed-off-by: Shivaprasad G Bhat <sbhat at linux.vnet.ibm.com>
> ---
> src/util/virpci.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/src/util/virpci.c b/src/util/virpci.c
> index bff37d7..89e69e2 100644
> --- a/src/util/virpci.c
> +++ b/src/util/virpci.c
> @@ -75,6 +75,7 @@ struct _virPCIDevice {
> bool has_pm_reset;
> bool managed;
> char *stubDriver;
> + int iommuGroup;
>
> /* used by reattach function */
> bool unbind_from_stub;
> @@ -1564,6 +1565,8 @@ virPCIDeviceNew(unsigned int domain,
> virPCIDevicePtr dev;
> char *vendor = NULL;
> char *product = NULL;
> + virPCIDeviceAddress devAddr = { domain, bus,
> + slot, function };
I'd rather see this explicitly initialized {.domain = domain, .bus =
bus, ...} because if we ever change order of virPCIDeviceAddress struct
(no idea why we would do that right now, but we might) this will slip
silently.
>
> if (VIR_ALLOC(dev) < 0)
> return NULL;
> @@ -1611,6 +1614,8 @@ virPCIDeviceNew(unsigned int domain,
> goto error;
> }
>
> + dev->iommuGroup = virPCIDeviceAddressGetIOMMUGroupNum(&devAddr);
> +
> VIR_DEBUG("%s %s: initialized", dev->id, dev->name);
>
> cleanup:
>
ACK with that fixed.
Michal
More information about the libvir-list
mailing list