]> xenbits.xensource.com Git - libvirt.git/commitdiff
nodedev: update netdev feature bits before each dumpxml
authorLaine Stump <laine@laine.org>
Tue, 16 Jun 2015 15:57:11 +0000 (11:57 -0400)
committerLaine Stump <laine@laine.org>
Wed, 17 Jun 2015 17:51:33 +0000 (13:51 -0400)
As with several other attributes of devices (link status, sriov VF
list, IOMMU group list), the detdev feature bits aren't automatically
updated in the nodedev driver's cache when they change. In order to
get a properly up-to-date list when getting the XML of a device, we
must reget them in update-caps prior to each dumpxml.

This resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1232880

src/node_device/node_device_driver.c

index 768db7fbb353861ee53c0a91df38fe8d8bafd636..500caeb2317281bd6fa592cb2d4f3a359b513ede 100644 (file)
@@ -58,6 +58,9 @@ static int update_caps(virNodeDeviceObjPtr dev)
         case VIR_NODE_DEV_CAP_NET:
             if (virNetDevGetLinkInfo(cap->data.net.ifname, &cap->data.net.lnk) < 0)
                 return -1;
+            virBitmapFree(cap->data.net.features);
+            if (virNetDevGetFeatures(cap->data.net.ifname, &cap->data.net.features) < 0)
+                return -1;
             break;
         case VIR_NODE_DEV_CAP_PCI_DEV:
            if (nodeDeviceSysfsGetPCIRelatedDevCaps(dev->def->sysfs_path,