From: Andrea Bolognani Date: Thu, 29 Jun 2017 14:13:02 +0000 (+0200) Subject: conf: Move virDomainPCIAddressBusIsFullyReserved() X-Git-Tag: v3.6.0-rc1~191 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c79f97c83ce1421f79756a9a344e8e77ceeeb1d8;p=thirdparty%2Flibvirt.git conf: Move virDomainPCIAddressBusIsFullyReserved() This function was private to the QEMU driver and was, accordingly, called qemuDomainPCIBusFullyReserved(). However the function is really not QEMU-specific at all, so it makes sense to move it closer to the virDomainPCIAddressBus struct it operates on. Signed-off-by: Andrea Bolognani Reviewed-by: Laine Stump --- diff --git a/src/conf/domain_addr.c b/src/conf/domain_addr.c index 639168effa..0ae1ed93af 100644 --- a/src/conf/domain_addr.c +++ b/src/conf/domain_addr.c @@ -355,6 +355,20 @@ virDomainPCIAddressBusSetModel(virDomainPCIAddressBusPtr bus, } +bool +virDomainPCIAddressBusIsFullyReserved(virDomainPCIAddressBusPtr bus) +{ + size_t i; + + for (i = bus->minSlot; i <= bus->maxSlot; i++) { + if (!bus->slot[i].functions) + return false; + } + + return true; +} + + /* Ensure addr fits in the address set, by expanding it if needed * * Return value: diff --git a/src/conf/domain_addr.h b/src/conf/domain_addr.h index f884b8af2b..c90a335919 100644 --- a/src/conf/domain_addr.h +++ b/src/conf/domain_addr.h @@ -141,6 +141,9 @@ int virDomainPCIAddressBusSetModel(virDomainPCIAddressBusPtr bus, virDomainControllerModelPCI model) ATTRIBUTE_NONNULL(1); +bool virDomainPCIAddressBusIsFullyReserved(virDomainPCIAddressBusPtr bus) + ATTRIBUTE_NONNULL(1); + bool virDomainPCIAddressSlotInUse(virDomainPCIAddressSetPtr addrs, virPCIDeviceAddressPtr addr) ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2); diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 440a563166..235725199c 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -106,6 +106,7 @@ virDomainCCWAddressSetFree; virDomainCCWAddressValidate; virDomainGetBlkioParametersAssignFromDef; virDomainPCIAddressAsString; +virDomainPCIAddressBusIsFullyReserved; virDomainPCIAddressBusSetModel; virDomainPCIAddressEnsureAddr; virDomainPCIAddressFlagsCompatible; diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index b5b863fe4d..efc698da13 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -1499,19 +1499,6 @@ qemuDomainValidateDevicePCISlotsChipsets(virDomainDefPtr def, } -static bool -qemuDomainPCIBusFullyReserved(virDomainPCIAddressBusPtr bus) -{ - size_t i; - - for (i = bus->minSlot; i <= bus->maxSlot; i++) - if (!bus->slot[i].functions) - return false; - - return true; -} - - /* * This assigns static PCI slots to all configured devices. * The ordering here is chosen to match the ordering used @@ -2043,7 +2030,7 @@ qemuDomainAssignPCIAddresses(virDomainDefPtr def, bool buses_reserved = true; for (i = 0; i < addrs->nbuses; i++) { - if (!qemuDomainPCIBusFullyReserved(&addrs->buses[i])) { + if (!virDomainPCIAddressBusIsFullyReserved(&addrs->buses[i])) { buses_reserved = false; break; }