Laine Stump <laine@xxxxxxxxx> [2018-06-07, 09:43PM -0400]: > On 05/24/2018 08:24 AM, Xiao Feng Ren wrote: > > From: Yi Min Zhao <zyimin@xxxxxxxxxxxxx> > > > > 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@xxxxxxxxxxxxx> > > Reviewed-by: Boris Fiuczynski <fiuczy@xxxxxxxxxxxxxxxxxx> > > Reviewed-by: Stefan Zimmermann <stzi@xxxxxxxxxxxxx> > > Reviewed-by: Bjoern Walk <bwalk@xxxxxxxxxxxxxxxxxx> > > --- > > 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. Yeah, we do encode a lot of state with this member. IIRC, if the zpci pointer is allocated, we generally do have zpci support available. The booleans refer to if an actual zpci address has been generated by the PCI address generation code. This only happens when the pointer is allocated. Another way would be to check the zpci capability. > > }; > > > > typedef enum { > > > -- > libvir-list mailing list > libvir-list@xxxxxxxxxx > https://www.redhat.com/mailman/listinfo/libvir-list > -- IBM Systems Linux on Z & Virtualization Development ------------------------------------------------------------------------ IBM Deutschland Research & Development GmbH Schönaicher Str. 220, 71032 Böblingen Phone: +49 7031 16 1819 ------------------------------------------------------------------------ Vorsitzende des Aufsichtsrats: Martina Koederitz Geschäftsführung: Dirk Wittkopp Sitz der Gesellschaft: Böblingen Registergericht: Amtsgericht Stuttgart, HRB 243294
Attachment:
signature.asc
Description: PGP signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list