]> xenbits.xensource.com Git - people/aperard/libvirt.git/commitdiff
conf: replace virHostdevIsVFIODevice with virHostdevIsPCIDevice
authorLaine Stump <laine@redhat.com>
Fri, 5 Jan 2024 01:12:51 +0000 (20:12 -0500)
committerLaine Stump <laine@redhat.com>
Mon, 8 Jan 2024 04:58:44 +0000 (23:58 -0500)
virHostdevIsVFIODevice() and virDomainDefHasVFIOHostdev() are only ever
called from the QEMU driver, and in the case of the QEMU driver, any
PCI hostdev by definition uses VFIO, so really all these callers only
need to know if the device is a PCI hostdev.

(It turned out that the less specific virHostdevIsPCIDevice() already
existed in hypervisor/virhostdev.c, so I had to remove one of them;
since conf is a lower level directory than hypervisor, and the
function is called from conf, keeping the copy in hypervisor would
have required moving its caller (virDomainDefHasPCIHostdev()) into
hypervisor as well, so I just removed the copy in hypervisor.)

Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
src/conf/domain_conf.c
src/conf/domain_conf.h
src/hypervisor/virhostdev.c
src/hypervisor/virhostdev.h
src/libvirt_private.syms
src/qemu/qemu_domain.c
src/qemu/qemu_hostdev.c
src/qemu/qemu_hotplug.c

index 9906cf7315d58abaa37dea7f1ea5434c8cfdf1d6..c11129c7ffd7d91150d556e4ab3f5e3ef72f4b48 100644 (file)
@@ -30704,12 +30704,12 @@ virDomainDefHasNVMeDisk(const virDomainDef *def)
 
 
 bool
-virDomainDefHasVFIOHostdev(const virDomainDef *def)
+virDomainDefHasPCIHostdev(const virDomainDef *def)
 {
     size_t i;
 
     for (i = 0; i < def->nhostdevs; i++) {
-        if (virHostdevIsVFIODevice(def->hostdevs[i]))
+        if (virHostdevIsPCIDevice(def->hostdevs[i]))
             return true;
     }
 
@@ -30980,17 +30980,16 @@ virHostdevIsMdevDevice(const virDomainHostdevDef *hostdev)
 
 
 /**
- * virHostdevIsVFIODevice:
+ * virHostdevIsPCIDevice:
  * @hostdev: host device to check
  *
- * Returns true if @hostdev is a PCI device with VFIO backend, false otherwise.
+ * Returns true if @hostdev is a PCI device, false otherwise.
  */
 bool
-virHostdevIsVFIODevice(const virDomainHostdevDef *hostdev)
+virHostdevIsPCIDevice(const virDomainHostdevDef *hostdev)
 {
     return hostdev->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS &&
-        hostdev->source.subsys.type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI &&
-        hostdev->source.subsys.u.pci.driver.name == VIR_DEVICE_HOSTDEV_PCI_DRIVER_NAME_VFIO;
+        hostdev->source.subsys.type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI;
 }
 
 
index 9d76dc7c7d4ecb5aba46340bb92df44f74d8959e..a7a7f770c1238836d5d73a8d785c3a00dd388a91 100644 (file)
@@ -4419,7 +4419,7 @@ bool
 virDomainDefHasNVMeDisk(const virDomainDef *def);
 
 bool
-virDomainDefHasVFIOHostdev(const virDomainDef *def);
+virDomainDefHasPCIHostdev(const virDomainDef *def);
 
 bool
 virDomainDefHasMdevHostdev(const virDomainDef *def);
@@ -4477,7 +4477,7 @@ bool
 virHostdevIsMdevDevice(const virDomainHostdevDef *hostdev)
     ATTRIBUTE_NONNULL(1);
 bool
-virHostdevIsVFIODevice(const virDomainHostdevDef *hostdev)
+virHostdevIsPCIDevice(const virDomainHostdevDef *hostdev)
     ATTRIBUTE_NONNULL(1);
 
 int
index 27b0acdc9115476727008073aaeb37ef29065179..40f8a4bc2c5657a3f69fd7b4c082e58f6ae5abdf 100644 (file)
@@ -344,14 +344,6 @@ virHostdevNetDevice(virDomainHostdevDef *hostdev,
 }
 
 
-bool
-virHostdevIsPCIDevice(const virDomainHostdevDef *hostdev)
-{
-    return hostdev->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS &&
-        hostdev->source.subsys.type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI;
-}
-
-
 static bool
 virHostdevIsPCINetDevice(const virDomainHostdevDef *hostdev)
 {
index 642d753ffb00d57856f2ba99f2498e42c24893bd..22ec3068db86221f29d87e62cd3e049c14623998 100644 (file)
@@ -232,5 +232,3 @@ virHostdevUpdateActiveNVMeDevices(virHostdevManager *hostdev_mgr,
                                   const char *dom_name,
                                   virDomainDiskDef **disks,
                                   size_t ndisks);
-
-bool virHostdevIsPCIDevice(const virDomainHostdevDef *hostdev);
index 3e70725e8722c5686139b6794b5d0fd74b5d5ff8..79bbcc80fc7fb7d822598a3a51cc17b913a1fee8 100644 (file)
@@ -340,11 +340,11 @@ virDomainDefHasMemoryHotplug;
 virDomainDefHasNVMeDisk;
 virDomainDefHasOldStyleROUEFI;
 virDomainDefHasOldStyleUEFI;
+virDomainDefHasPCIHostdev;
 virDomainDefHasSpiceGraphics;
 virDomainDefHasUSB;
 virDomainDefHasVcpusOffline;
 virDomainDefHasVDPANet;
-virDomainDefHasVFIOHostdev;
 virDomainDefLifecycleActionAllowed;
 virDomainDefMaybeAddController;
 virDomainDefMaybeAddInput;
@@ -777,8 +777,8 @@ virDomainEventWatchdogNewFromObj;
 virDomainQemuMonitorEventNew;
 virDomainQemuMonitorEventStateRegisterID;
 virHostdevIsMdevDevice;
+virHostdevIsPCIDevice;
 virHostdevIsSCSIDevice;
-virHostdevIsVFIODevice;
 
 
 # conf/domain_nwfilter.h
@@ -1642,7 +1642,6 @@ virCloseCallbacksDomainRunForConn;
 
 # hypervisor/virhostdev.h
 virHostdevFindUSBDevice;
-virHostdevIsPCIDevice;
 virHostdevManagerGetDefault;
 virHostdevPCINodeDeviceDetach;
 virHostdevPCINodeDeviceReAttach;
index 642ab78e6c3ed6c12f6e87e9d67b3231b31df13d..003fe7c71b608a99cbe1014ee1cbbe31397ffb84 100644 (file)
@@ -9343,7 +9343,7 @@ getPPC64MemLockLimitBytes(virDomainDef *def)
     for (i = 0; i < def->nhostdevs; i++) {
         virDomainHostdevDef *dev = def->hostdevs[i];
 
-        if (virHostdevIsVFIODevice(dev)) {
+        if (virHostdevIsPCIDevice(dev)) {
 
             pciAddr = &dev->source.subsys.u.pci.addr;
             if (virPCIDeviceAddressIsValid(pciAddr, false)) {
@@ -9448,7 +9448,7 @@ qemuDomainGetNumVFIOHostdevs(const virDomainDef *def)
     int n = 0;
 
     for (i = 0; i < def->nhostdevs; i++) {
-        if (virHostdevIsVFIODevice(def->hostdevs[i]) ||
+        if (virHostdevIsPCIDevice(def->hostdevs[i]) ||
             virHostdevIsMdevDevice(def->hostdevs[i]))
             n++;
     }
@@ -10492,7 +10492,7 @@ qemuDomainSupportsVideoVga(const virDomainVideoDef *video,
 bool
 qemuDomainNeedsVFIO(const virDomainDef *def)
 {
-    return virDomainDefHasVFIOHostdev(def) ||
+    return virDomainDefHasPCIHostdev(def) ||
         virDomainDefHasMdevHostdev(def) ||
         virDomainDefHasNVMeDisk(def);
 }
index 4992c23ee0c7f7c0dc7bd4bbbfe1b754eba6a8ef..15b543dbff108b4174a39b4733260c551f824ce5 100644 (file)
@@ -133,7 +133,7 @@ qemuHostdevUpdateActiveDomainDevices(virQEMUDriver *driver,
 bool
 qemuHostdevNeedsVFIO(const virDomainHostdevDef *hostdev)
 {
-    return virHostdevIsVFIODevice(hostdev) ||
+    return virHostdevIsPCIDevice(hostdev) ||
         virHostdevIsMdevDevice(hostdev);
 }
 
index 75e1d39b6042f4f2b87abc238535150c62f43855..0e45bd53e129b8e7082f7ee5106d661089fcfdd5 100644 (file)
@@ -4738,7 +4738,7 @@ qemuDomainRemoveHostDevice(virQEMUDriver *driver,
 
     virDomainAuditHostdev(vm, hostdev, "detach", true);
 
-    if (!virHostdevIsVFIODevice(hostdev) &&
+    if (!virHostdevIsPCIDevice(hostdev) &&
         qemuSecurityRestoreHostdevLabel(driver, vm, hostdev) < 0)
         VIR_WARN("Failed to restore host device labelling");