]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
nodedev: Add locking in nodeNumOfDevices
authorCole Robinson <crobinso@redhat.com>
Thu, 1 Oct 2009 18:51:39 +0000 (14:51 -0400)
committerCole Robinson <crobinso@redhat.com>
Mon, 5 Oct 2009 18:07:15 +0000 (14:07 -0400)
Signed-off-by: Cole Robinson <crobinso@redhat.com>
src/node_device/node_device_driver.c

index 93ca28c226bacf60361bb263faf6a061d0d0f09c..c902e7d943f4af808b7ae69297c524408d623530 100644 (file)
@@ -153,10 +153,15 @@ static int nodeNumOfDevices(virConnectPtr conn,
     int ndevs = 0;
     unsigned int i;
 
-    for (i = 0; i < driver->devs.count; i++)
+    nodeDeviceLock(driver);
+    for (i = 0; i < driver->devs.count; i++) {
+        virNodeDeviceObjLock(driver->devs.objs[i]);
         if ((cap == NULL) ||
             dev_has_cap(driver->devs.objs[i], cap))
             ++ndevs;
+        virNodeDeviceObjUnlock(driver->devs.objs[i]);
+    }
+    nodeDeviceUnlock(driver);
 
     return ndevs;
 }