[libvirt] [PATCH 02/32] Split out pciaccess (de)initialization

Ján Tomko jtomko at redhat.com
Mon Jun 6 09:01:39 UTC 2016


Move pci_system_init and pci_system_cleanup into separate functions,
to make the conditional compilation easier to read.
---
 src/node_device/node_device_udev.c | 43 +++++++++++++++++++++++++-------------
 1 file changed, 28 insertions(+), 15 deletions(-)

diff --git a/src/node_device/node_device_udev.c b/src/node_device/node_device_udev.c
index 86862d6..ebf5145 100644
--- a/src/node_device/node_device_udev.c
+++ b/src/node_device/node_device_udev.c
@@ -1474,6 +1474,18 @@ static int udevEnumerateDevices(struct udev *udev)
 }
 
 
+static void udevPCITranslateDeinit(void)
+{
+#if defined __s390__ || defined __s390x_
+    /* Nothing was initialized, nothing needs to be cleaned up */
+#else
+    /* pci_system_cleanup returns void */
+    pci_system_cleanup();
+#endif
+    return;
+}
+
+
 static int nodeStateCleanup(void)
 {
     int ret = 0;
@@ -1509,13 +1521,7 @@ static int nodeStateCleanup(void)
         ret = -1;
     }
 
-#if defined __s390__ || defined __s390x_
-    /* Nothing was initialized, nothing needs to be cleaned up */
-#else
-    /* pci_system_cleanup returns void */
-    pci_system_cleanup();
-#endif
-
+    udevPCITranslateDeinit();
     return ret;
 }
 
@@ -1674,14 +1680,8 @@ static int udevSetupSystemDev(void)
     return ret;
 }
 
-static int nodeStateInitialize(bool privileged,
-                               virStateInhibitCallback callback ATTRIBUTE_UNUSED,
-                               void *opaque ATTRIBUTE_UNUSED)
+static int udevPCITranslateInit(bool privileged ATTRIBUTE_UNUSED)
 {
-    udevPrivate *priv = NULL;
-    struct udev *udev = NULL;
-    int ret = -1;
-
 #if defined __s390__ || defined __s390x_
     /* On s390(x) system there is no PCI bus.
      * Therefore there is nothing to initialize here. */
@@ -1696,10 +1696,23 @@ static int nodeStateInitialize(bool privileged,
             char ebuf[256];
             VIR_ERROR(_("Failed to initialize libpciaccess: %s"),
                       virStrerror(pciret, ebuf, sizeof(ebuf)));
-            goto out;
+            return -1;
         }
     }
 #endif
+    return 0;
+}
+
+static int nodeStateInitialize(bool privileged,
+                               virStateInhibitCallback callback ATTRIBUTE_UNUSED,
+                               void *opaque ATTRIBUTE_UNUSED)
+{
+    udevPrivate *priv = NULL;
+    struct udev *udev = NULL;
+    int ret = -1;
+
+    if (udevPCITranslateInit(privileged) < 0)
+        goto out;
 
     if (VIR_ALLOC(priv) < 0)
         goto out;
-- 
2.7.3




More information about the libvir-list mailing list