[libvirt] [PATCH 01/13] conf: Add definitions for 'uid' and 'fid' PCI address attributes

Laine Stump laine at laine.org
Fri Jun 8 01:43:42 UTC 2018


On 05/24/2018 08:24 AM, Xiao Feng Ren wrote:
> From: Yi Min Zhao <zyimin at linux.ibm.com>
>
> Add zPCI definitions in preparation of extending the PCI address
> with parameters uid (user-defined identifier) and fid (PCI function
> identifier).
>
> Signed-off-by: Yi Min Zhao <zyimin at linux.ibm.com>
> Reviewed-by: Boris Fiuczynski <fiuczy at linux.vnet.ibm.com>
> Reviewed-by: Stefan Zimmermann <stzi at linux.ibm.com>
> Reviewed-by: Bjoern Walk <bwalk at linux.vnet.ibm.com>
> ---
>  src/util/virpci.h | 10 ++++++++++
>  1 file changed, 10 insertions(+)
>
> diff --git a/src/util/virpci.h b/src/util/virpci.h
> index 794b7e59db..250e9278ba 100644
> --- a/src/util/virpci.h
> +++ b/src/util/virpci.h
> @@ -36,12 +36,22 @@ typedef virPCIDeviceAddress *virPCIDeviceAddressPtr;
>  typedef struct _virPCIDeviceList virPCIDeviceList;
>  typedef virPCIDeviceList *virPCIDeviceListPtr;
>  
> +typedef struct _virZPCIDeviceAddress virZPCIDeviceAddress;
> +typedef virZPCIDeviceAddress *virZPCIDeviceAddressPtr;
> +struct _virZPCIDeviceAddress {
> +    unsigned int zpcifid;
> +    unsigned int zpciuid;
> +    bool fid_assigned;
> +    bool uid_assigned;
> +};
> +
>  struct _virPCIDeviceAddress {
>      unsigned int domain;
>      unsigned int bus;
>      unsigned int slot;
>      unsigned int function;
>      int multi; /* virTristateSwitch */
> +    virZPCIDeviceAddressPtr zpci;

Why does this need to be a pointer to a "virZPCIDeviceAddress"? The
struct itself is a fixed size, and it already has bools to indicate
whether or not each of the data attributes has been set. That's just
extra memory management churn for no useful purpose.


>  };
>  
>  typedef enum {





More information about the libvir-list mailing list