On Thu, 2020-04-09 at 12:31 +0200, Shalini Chellathurai Saroja wrote: > +static bool > +qemuDomainDeviceDefValidateZPCIUid(virZPCIDeviceAddressPtr zpci) > +{ > + if (zpci->uid_set && > + (zpci->uid > VIR_DOMAIN_DEVICE_ZPCI_MAX_UID || > + zpci->uid == 0)) { > + virReportError(VIR_ERR_XML_ERROR, > + _("Invalid PCI address uid='0x%.4x', " > + "must be > 0x0000 and <= 0x%.4x"), > + zpci->uid, > + VIR_DOMAIN_DEVICE_ZPCI_MAX_UID); > + return false; > + } > + > + return true; > +} > + > + > static int > qemuValidateDomainDeviceDefZPCIAddress(virDomainDeviceInfoPtr info, > virQEMUCapsPtr qemuCaps) > @@ -960,6 +978,12 @@ qemuValidateDomainDeviceDefZPCIAddress(virDomainDeviceInfoPtr info, > return -1; > } > > + /* We don't need to check fid because fid covers > + * all range of uint32 type. > + */ > + if (!qemuDomainDeviceDefValidateZPCIUid(&info->addr.pci.zpci)) > + return -1; No need to create a separate function, just perform the check inline here. -- Andrea Bolognani / Red Hat / Virtualization