aboutsummaryrefslogtreecommitdiff
path: root/xenserver
diff options
context:
space:
mode:
authorJesse Gross <jesse@nicira.com>2009-10-19 20:14:31 -0700
committerJesse Gross <jesse@nicira.com>2009-10-19 21:03:22 -0700
commit450f38cf3c84f7b6f4722e174d824f328b4414f8 (patch)
tree77378aa20cc54505965c9657e1ab8cebaf1326e3 /xenserver
parent03fbffbda4d36188944a4df39eace449a0c306dd (diff)
xen: Restore state files for VIF VLANs
A change on master to use ovs-vsctl instead of state files for VLANs was ported to the citrix branch, which does not have ovs-vsctl. The interface reconfigure portion, which does not store the state files was ported but the vif-hotput script portion was not. This restores interface reconfigure to again save the state files. Bug #2187
Diffstat (limited to 'xenserver')
-rwxr-xr-xxenserver/etc_xensource_scripts_vif4
-rwxr-xr-xxenserver/opt_xensource_libexec_interface-reconfigure13
2 files changed, 14 insertions, 3 deletions
diff --git a/xenserver/etc_xensource_scripts_vif b/xenserver/etc_xensource_scripts_vif
index c3baba9e..8217fb00 100755
--- a/xenserver/etc_xensource_scripts_vif
+++ b/xenserver/etc_xensource_scripts_vif
@@ -71,8 +71,8 @@ add_to_bridge()
logger -t scripts-vif "Adding ${vif} to ${bridge} with address ${address}"
vid=
- if [ -e "/etc/openvswitch/br-$bridge" ]; then
- . "/etc/openvswitch/br-$bridge"
+ if [ -e "/var/lib/openvswitch/br-$bridge" ]; then
+ . "/var/lib/openvswitch/br-$bridge"
if [ -n "$VLAN_SLAVE" -a -n "$VLAN_VID" ]; then
bridge=$VLAN_SLAVE
vid="--add=vlan.$vif.tag=$VLAN_VID"
diff --git a/xenserver/opt_xensource_libexec_interface-reconfigure b/xenserver/opt_xensource_libexec_interface-reconfigure
index 2b12218d..82c38636 100755
--- a/xenserver/opt_xensource_libexec_interface-reconfigure
+++ b/xenserver/opt_xensource_libexec_interface-reconfigure
@@ -1473,7 +1473,18 @@ def action_up(pif):
cfgmod_argv += ['--add=vlan.%s.tag=%s' % (ipdev, pifrec['VLAN'])]
cfgmod_argv += ['--add=iface.%s.internal=true' % (ipdev)]
cfgmod_argv += ['--add=iface.%s.fake-bridge=true' % (ipdev)]
-
+ if not os.path.exists(vswitch_state_dir):
+ os.mkdir(vswitch_state_dir)
+ br = ConfigurationFile("br-%s" % ipdev, vswitch_state_dir)
+ br.write("VLAN_SLAVE=%s\n" % bridge)
+ br.write("VLAN_VID=%s\n" % pifrec['VLAN'])
+ br.close()
+ f.attach_child(br)
+ else:
+ br = ConfigurationFile("br-%s" % ipdev, vswitch_state_dir)
+ br.unlink()
+ f.attach_child(br)
+
# Apply updated configuration.
try:
f.apply()