xenserver: Compute correct physical PIFs for VLANs on bonds.
authorBen Pfaff <blp@nicira.com>
Thu, 20 Aug 2009 22:39:01 +0000 (15:39 -0700)
committerBen Pfaff <blp@nicira.com>
Thu, 20 Aug 2009 22:39:01 +0000 (15:39 -0700)
Otherwise the bond device is considered the physical PIF of a VLAN-on-bond
PIF, and various bad stuff happens.

xenserver/opt_xensource_libexec_interface-reconfigure

index 24b160f..301251f 100755 (executable)
@@ -467,7 +467,7 @@ For a non-VLAN, non-bond master PIF, the PIF is its own physical device PIF.
     pifrec = db.get_pif_record(pif)
 
     if pifrec['VLAN'] != '-1':
-        return [get_vlan_slave_of_pif(pif)]
+        return get_physdev_pifs(get_vlan_slave_of_pif(pif))
     elif len(pifrec['bond_master_of']) != 0:
         return get_bond_slaves_of_pif(pif)
     else: