[ovs-dev] [PATCH 1/4] xenserver: Remove support for XenServer versions older than 5.6 FP1.

Justin Pettit jpettit at nicira.com
Fri Feb 11 18:55:18 UTC 2011


The commit "xenserver: Merge changes to scripts from XenServer 5.6.100."
breaks compatibility with XenServers older than 5.6 FP1.  This
commit removes the last vestiges of support for those older XenServer
versions.

Signed-off-by: Justin Pettit <jpettit at nicira.com>
---
 INSTALL.Linux                                      |    2 +-
 INSTALL.XenServer                                  |    5 +-
 tests/interface-reconfigure.at                     |    2 -
 vswitchd/vswitch.xml                               |    2 +-
 xenserver/README                                   |    6 +-
 xenserver/etc_init.d_openvswitch                   |   69 +----------------
 xenserver/etc_logrotate.d_openvswitch              |    5 +-
 xenserver/etc_profile.d_openvswitch.sh             |    4 +-
 xenserver/etc_xensource_scripts_vif                |    5 +-
 xenserver/openvswitch-xen.spec                     |   84 +------------------
 ...ensource_libexec_InterfaceReconfigureVswitch.py |   11 +---
 ..._lib_xsconsole_plugins-base_XSFeatureVSwitch.py |   27 +------
 xenserver/usr_sbin_xen-bugtool                     |    3 +-
 .../usr_share_openvswitch_scripts_ovs-external-ids |   20 +----
 ...sr_share_openvswitch_scripts_sysconfig.template |   78 +------------------
 15 files changed, 28 insertions(+), 295 deletions(-)

diff --git a/INSTALL.Linux b/INSTALL.Linux
index 9d69bd8..8ba73ed 100644
--- a/INSTALL.Linux
+++ b/INSTALL.Linux
@@ -3,7 +3,7 @@
 
 This document describes how to build and install Open vSwitch on a
 generic Linux host.  If you want to install Open vSwitch on a Citrix
-XenServer version 5.5.0, see INSTALL.XenServer instead.
+XenServer, see INSTALL.XenServer instead.
 
 This version of Open vSwitch may be built manually with "configure"
 and "make", as described below.  You may also build Debian packages by
diff --git a/INSTALL.XenServer b/INSTALL.XenServer
index 33b7f8b..e7be494 100644
--- a/INSTALL.XenServer
+++ b/INSTALL.XenServer
@@ -5,8 +5,7 @@ This document describes how to build and install Open vSwitch on a
 Citrix XenServer host.  If you want to install Open vSwitch on a
 generic Linux host, see INSTALL.Linux instead.
 
-These instructions have been tested with XenServer versions 5.5.0,
-5.5.0-24648p (Update 1), 5.5.0-25727p (Update 2), and 5.6.0.
+These instructions have been tested with XenServer 5.6 FP1.
 
 Building Open vSwitch for XenServer
 -----------------------------------
@@ -38,7 +37,7 @@ where:
     name of the Open vSwitch tarball, e.g. 0.90.0.
 
     <Xen kernel version> is the version number of the Xen kernel,
-    e.g. 2.6.18-128.1.1.el5.xs5.5.0.487.1006xen.  This version number
+    e.g. 2.6.32.12-0.7.1.xs5.6.100.307.170586xen.  This version number
     appears as the name of a directory in /lib/modules inside the VM.
     It always ends in "xen".
 
diff --git a/tests/interface-reconfigure.at b/tests/interface-reconfigure.at
index f7a60ac..fd6511c 100644
--- a/tests/interface-reconfigure.at
+++ b/tests/interface-reconfigure.at
@@ -729,7 +729,6 @@ Applying changes to /etc/sysconfig/network-scripts/ifcfg-xapi3 configuration
     set Bridge xenbr3 other-config:hwaddr="00:15:17:a0:29:81"
     set Bridge xenbr3 fail_mode=standalone
     br-set-external-id xenbr3 xs-network-uuids 2902ae1b-8013-897a-b697-0b200ea3aaa5;db7bdc03-074d-42ae-fc73-9b06de1d57f6
-    --if-exists del-br xapi3
     --may-exist add-br xapi3 xenbr3 123
     br-set-external-id xapi3 xs-network-uuids 2902ae1b-8013-897a-b697-0b200ea3aaa5;db7bdc03-074d-42ae-fc73-9b06de1d57f6
     set Interface xapi3 MAC="00:15:17:a0:29:81"
@@ -901,7 +900,6 @@ Applying changes to /etc/sysconfig/network-scripts/ifcfg-xapi2 configuration
     set Bridge xapi1 other-config:hwaddr="00:22:19:22:4b:af"
     set Bridge xapi1 fail_mode=standalone
     br-set-external-id xapi1 xs-network-uuids 45cbbb43-113d-a712-3231-c6463f253cef;99be2da4-6c33-6f8e-49ea-3bc592fe3c85
-    --if-exists del-br xapi2
     --may-exist add-br xapi2 xapi1 4
     br-set-external-id xapi2 xs-network-uuids 45cbbb43-113d-a712-3231-c6463f253cef;99be2da4-6c33-6f8e-49ea-3bc592fe3c85
     set Interface xapi2 MAC="00:22:19:22:4b:af"
diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml
index f4515f4..c80e8cd 100644
--- a/vswitchd/vswitch.xml
+++ b/vswitchd/vswitch.xml
@@ -244,7 +244,7 @@
       <column name="system_version">
         <p>
           The version of the system identified by <ref column="system_type"/>,
-          e.g. <code>5.5.0-24648p</code> on XenServer 5.5.0 build 24648.
+          e.g. <code>5.6.100-39265p</code> on XenServer 5.6.100 build 39265.
         </p>
         <p>
           System integrators are responsible for choosing and setting an
diff --git a/xenserver/README b/xenserver/README
index 7da3ac2..3110aab 100644
--- a/xenserver/README
+++ b/xenserver/README
@@ -79,8 +79,8 @@ files are:
     uuid.py
 
         This is uuid.py from Python 2.5.  It is installed into the
-        Open vSwitch RPM because XenServer 5.5 and 5.6 use Python 2.4,
-        which do not have uuid.py.
+        Open vSwitch RPM because XenServer uses Python 2.4, which does
+        not have uuid.py.
 
 To install, build the Open vSwitch RPM with a command like this:
 
@@ -94,7 +94,7 @@ question and reboot them.  (The openvswitch-dbg package that is also
 produced need not be installed, but it is harmless to do so.)
 
 ----------------------------------------------------------------------
-Copyright (C) 2009, 2010 Nicira Networks, Inc.
+Copyright (C) 2009, 2010, 2011 Nicira Networks, Inc.
 
 Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright
diff --git a/xenserver/etc_init.d_openvswitch b/xenserver/etc_init.d_openvswitch
index a08a95d..8df0ed8 100755
--- a/xenserver/etc_init.d_openvswitch
+++ b/xenserver/etc_init.d_openvswitch
@@ -75,21 +75,6 @@ case ${NETWORK_MODE:=openvswitch} in
         ;;
 esac
 
-# General config variables in /etc/sysconfig/openvswitch
-if [ -f /etc/xensource-inventory ]; then
-    if test "$PRODUCT_VERSION" = "5.5.0"; then
-        # XenServer 5.5.0 needs ovs-brcompatd and /proc/net simulation.
-        : ${ENABLE_BRCOMPAT:=y}
-        : ${ENABLE_FAKE_PROC_NET:=y}
-    else
-        # Later versions don't need them.
-        : ${ENABLE_BRCOMPAT:=n}
-        : ${ENABLE_FAKE_PROC_NET:=n}
-    fi
-else
-    : ${ENABLE_BRCOMPAT:=y}
-    : ${ENABLE_FAKE_PROC_NET:=y}
-fi
 : ${ENABLE_MONITOR:=y}
 : ${FORCE_COREFILES:=y}
 
@@ -124,36 +109,15 @@ fi
 : ${VSWITCHD_VALGRIND_LOG:=}
 : ${VSWITCHD_VALGRIND_OPT:=}
 
-# Config variables specific to ovs-brcompatd
-: ${BRCOMPATD_PIDFILE:=/var/run/openvswitch/ovs-brcompatd.pid}
-: ${BRCOMPATD_RUN_DIR:=/var/xen/openvswitch}
-: ${BRCOMPATD_PRIORITY:=-10}
-: ${BRCOMPATD_LOGFILE:=/var/log/openvswitch/ovs-brcompatd.log}
-: ${BRCOMPATD_FILE_LOGLEVEL:=INFO}
-: ${BRCOMPATD_SYSLOG_LOGLEVEL:=ERR}
-: ${BRCOMPATD_MEMLEAK_LOGFILE:=}
-: ${BRCOMPATD_STRACE_LOG:=}
-: ${BRCOMPATD_STRACE_OPT:=}
-: ${BRCOMPATD_VALGRIND_LOG:=}
-: ${BRCOMPATD_VALGRIND_OPT:=}
-
 # Full paths to executables & modules
 ovsdb_server="/usr/sbin/ovsdb-server"
 ovsdb_tool="/usr/bin/ovsdb-tool"
 vswitchd="/usr/sbin/ovs-vswitchd"
-brcompatd="/usr/sbin/ovs-brcompatd"
 dpctl="/usr/bin/ovs-dpctl"
 appctl="/usr/bin/ovs-appctl"
 ofctl="/usr/bin/ovs-ofctl"
 vsctl="/usr/bin/ovs-vsctl"
 
-if [ "$ENABLE_FAKE_PROC_NET" = "y" ]; then
-    if [ "$ENABLE_BRCOMPAT" != "y" ]; then
-        warning "FAKE_PROC_NET required BRCOMPAT which was disabled.  Force enabling."
-        ENABLE_BRCOMPAT="y"
-    fi
-fi
-
 if test "$ENABLE_MONITOR" = "y"; then
     monitor_opt="--monitor"
 else
@@ -189,15 +153,9 @@ function insert_modules_if_required {
         action "Inserting llc module" modprobe llc
         action "Inserting openvswitch module" modprobe openvswitch_mod
     fi
-    if [ "$ENABLE_BRCOMPAT" = "y" ] && [ -n "$BRCOMPATD_PIDFILE" ] && ! lsmod | grep -q "brcompat_mod"; then
-        action "Inserting brcompat module" modprobe brcompat_mod
-    fi
 }
 
 function remove_modules {
-    if lsmod | grep -q "brcompat_mod"; then
-        action "Removing brcompat module" rmmod brcompat_mod.ko
-    fi
     if lsmod | grep -q "openvswitch_mod"; then
         action "Removing openvswitch module" rmmod openvswitch_mod.ko
     fi
@@ -280,26 +238,14 @@ function start_ovsdb_server {
 }
 
 function start_vswitchd {
-    local fake_proc_net_opt=
-    if [ "$ENABLE_FAKE_PROC_NET" = "y" ]; then
-        fake_proc_net_opt="--fake-proc-net"
-    fi
-
     local mlockall_opt=
     if [ "$VSWITCHD_MLOCKALL" != "no" ]; then
         mlockall_opt="--mlockall"
     fi
 
-    start_daemon VSWITCHD "$vswitchd" $fake_proc_net_opt $mlockall_opt \
-                 "$VSWITCHD_OVSDB_SERVER"
+    start_daemon VSWITCHD "$vswitchd" $mlockall_opt "$VSWITCHD_OVSDB_SERVER"
  }
 
-function start_brcompatd {
-    start_daemon BRCOMPATD "$brcompatd" \
-                 --appctl-command="$appctl --target=/var/run/openvswitch/ovs-vswitchd.\`cat $VSWITCHD_PIDFILE\`.ctl %s" \
-                 "$VSWITCHD_OVSDB_SERVER"
-}
-
 function stop_daemon {
     local DAEMON=$1
     local BINARY=$2
@@ -414,9 +360,6 @@ function start {
     set_system_ids
 
     start_vswitchd
-    if [ "${ENABLE_BRCOMPAT}" = "y" ] ; then
-        start_brcompatd
-    fi
 
     if [ -f /etc/xensource-inventory ]; then
         # Start daemon to monitor external ids
@@ -429,7 +372,6 @@ function start {
 }
 
 function stop {
-    stop_daemon BRCOMPATD "$brcompatd"
     stop_daemon VSWITCHD "$vswitchd"
     stop_daemon OVSDB_SERVER "$ovsdb_server"
     if [ -e /var/run/openvswitch/ovs-external-ids.pid ]; then
@@ -510,20 +452,13 @@ case "$1" in
         shift
         strace -p $(cat "$VSWITCHD_PIDFILE") "$@"
         ;;
-    strace-brcompatd)
-        shift
-        strace -p $(cat "$BRCOMPATD_PIDFILE") "$@"
-        ;;
     status)
         status -p "$OVSDB_SERVER_PIDFILE" ovsdb-server &&
-        status -p "$VSWITCHD_PIDFILE" ovs-vswitchd &&
-        (test "$ENABLE_BRCOMPAT" != "y" || 
-            status -p "$BRCOMPATD_PIDFILE" ovs-brcompatd)
+        status -p "$VSWITCHD_PIDFILE" ovs-vswitchd
         ;;
     version)
         /usr/sbin/ovsdb-server -V
         /usr/sbin/ovs-vswitchd -V
-        /usr/sbin/ovs-brcompatd -V
         ;;
     force-reload-kmod)
 	force_reload_kmod
diff --git a/xenserver/etc_logrotate.d_openvswitch b/xenserver/etc_logrotate.d_openvswitch
index 52eb4f7..c1ead14 100644
--- a/xenserver/etc_logrotate.d_openvswitch
+++ b/xenserver/etc_logrotate.d_openvswitch
@@ -1,4 +1,4 @@
-# Copyright (C) 2009, 2010 Nicira Networks, Inc.
+# Copyright (C) 2009, 2010, 2011 Nicira Networks, Inc.
 #
 # Copying and distribution of this file, with or without modification,
 # are permitted in any medium without royalty provided the copyright
@@ -16,8 +16,5 @@
 	if [ -e /var/run/openvswitch/ovsdb-server.pid ]; then	
 	    /usr/bin/ovs-appctl -t ovsdb-server vlog/reopen
 	fi
-	if [ -e /var/run/openvswitch/ovs-brcompatd.pid ]; then
-		/usr/bin/ovs-appctl -t ovs-brcompatd vlog/reopen
-	fi
 	endscript
 }
diff --git a/xenserver/etc_profile.d_openvswitch.sh b/xenserver/etc_profile.d_openvswitch.sh
index a7e1a0c..7376f53 100644
--- a/xenserver/etc_profile.d_openvswitch.sh
+++ b/xenserver/etc_profile.d_openvswitch.sh
@@ -1,4 +1,4 @@
-# Copyright (C) 2009, 2010 Nicira Networks, Inc.
+# Copyright (C) 2009, 2010, 2011 Nicira Networks, Inc.
 #
 # Copying and distribution of this file, with or without modification,
 # are permitted in any medium without royalty provided the copyright
@@ -42,7 +42,7 @@ function monitorlogs {
         done
         grep="$grep'"
     fi
-    cmd="tail -F /var/log/messages /var/log/openvswitch/ovs-vswitchd.log /var/log/openvswitch/ovs-brcompatd.log /var/log/openvswitch/ovsdb-server /var/log/xensource.log $grep | tee /var/log/monitorlogs.out"
+    cmd="tail -F /var/log/messages /var/log/openvswitch/ovs-vswitchd.log /var/log/openvswitch/ovsdb-server /var/log/xensource.log $grep | tee /var/log/monitorlogs.out"
     printf "cmd: $cmd\n"
     eval "$cmd"
 }
diff --git a/xenserver/etc_xensource_scripts_vif b/xenserver/etc_xensource_scripts_vif
index 1c9b117..2ea2300 100755
--- a/xenserver/etc_xensource_scripts_vif
+++ b/xenserver/etc_xensource_scripts_vif
@@ -146,10 +146,7 @@ remove_from_bridge()
         # Nothing to do
         ;;
     openvswitch)
-        # If ovs-brcompatd is running, it might already have deleted the
-        # port.  Use --if-exists to suppress the error that would otherwise
-        # arise in that case.
-        $vsctl --timeout=30 -- --if-exists del-port $dev
+        $vsctl --timeout=30 -- del-port $dev
         ;;
     esac
 }
diff --git a/xenserver/openvswitch-xen.spec b/xenserver/openvswitch-xen.spec
index 9a05090..890621b 100644
--- a/xenserver/openvswitch-xen.spec
+++ b/xenserver/openvswitch-xen.spec
@@ -119,71 +119,6 @@ if [ ! -f /etc/xensource-inventory ]; then
 fi
 . /etc/xensource-inventory
 
-if [ "$1" = "1" ]; then
-    if md5sum -c --status <<EOF
-ca141d60061dcfdade73e75abc6529b5  /usr/sbin/brctl
-b8e9835862ef1a9cec2a3f477d26c989  /etc/xensource/scripts/vif
-51970ad613a3996d5997e18e44db47da  /opt/xensource/libexec/interface-reconfigure
-5654c8c36699fcc8744ca9cd5b855414  /usr/sbin/xen-bugtool
-EOF
-    then
-        printf "\nVerified host scripts from XenServer 5.5.0.\n\n"
-    elif md5sum -c --status <<EOF
-ca141d60061dcfdade73e75abc6529b5  /usr/sbin/brctl
-b8e9835862ef1a9cec2a3f477d26c989  /etc/xensource/scripts/vif
-51970ad613a3996d5997e18e44db47da  /opt/xensource/libexec/interface-reconfigure
-f6519085c2fc5f7bc4eccc294ed62000  /usr/sbin/xen-bugtool
-EOF
-    then
-        printf "\nVerified host scripts from XenServer 5.5.0-24648p (Update 1)\n"
-        printf "or 5.5.0-25727p (Update 2).\n\n"
-    elif md5sum -c --status <<EOF
-ca141d60061dcfdade73e75abc6529b5  /usr/sbin/brctl
-02cf136237ed85fcbcc1efc15ce0591c  /opt/xensource/libexec/interface-reconfigure
-3a192ee70ebf2153c90051b3af95f331  /opt/xensource/libexec/InterfaceReconfigureBridge.py
-f71cadf1464caefa7943de0ab47fdd8a  /opt/xensource/libexec/InterfaceReconfigure.py
-d70f08f235fb1bfd49a0580e440f15a0  /opt/xensource/libexec/InterfaceReconfigureVswitch.py
-f5c85ca825b1e6f5a0845530981cd836  /etc/xensource/scripts/vif
-facb851606f82ca2bcc760a4d91bbe33  /usr/sbin/xen-bugtool
-EOF
-    then
-        printf "\nVerified host scripts from XenServer 5.5.900-29381p.\n\n"
-    else
-cat <<EOF
-
-The original XenServer scripts replaced by this package are not those
-of any supported version of XenServer.  This could lead to unexpected
-behavior of your server.  Unless you are sure you know what you are
-doing, it is highly recommended that you remove this package
-immediately after the install completes, which will restore the
-XenServer scripts that you were previously using.
-
-EOF
-    fi
-fi
-
-# On XenServer 5.5.0, we need refresh-xs-network-uuids to run whenever
-# XAPI starts or restarts.  (On XenServer 5.6.0, XAPI calls the
-# "update" method of the vswitch-cfg-update plugin whenever it starts
-# or restarts, so this is no longer necessary.)
-if test "$PRODUCT_VERSION" = "5.5.0"; then
-    RNU=/usr/share/openvswitch/scripts/refresh-xs-network-uuids
-    XSS=/opt/xensource/libexec/xapi-startup-script
-    if test -e $XSS && (test ! -L $XSS || test "`readlink $XSS`" != $RNU); then
-        echo "$XSS is already in use, refusing to overwrite"
-        exit 1
-    fi
-    rm -f $XSS
-    ln -s $RNU $XSS
-
-    # If /etc/xensource/network.conf doesn't exist (it was added in 5.6.0),
-    # then interface-reconfigure will be unhappy when we run it below.
-    if test ! -e /etc/xensource/network.conf; then
-        echo bridge > /etc/xensource/network.conf
-    fi
-fi
-
-
 if test ! -e /var/xapi/network.dbcache; then
     if test "$1" = 1; then
         printf "Creating xapi database cache...  "
@@ -306,10 +241,6 @@ fi
 %postun
 if [ "$1" = "0" ]; then     # $1 = 1 for upgrade
     . /etc/xensource-inventory
-    if test "$PRODUCT_VERSION" = "5.5.0"; then
-        XSS=/opt/xensource/libexec/xapi-startup-script
-        rm -f $XSS
-    fi
 
     rm -f /usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.pyc \
         /usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.pyo
@@ -348,13 +279,8 @@ if [ "$1" = "0" ]; then     # $1 = 1 for upgrade
     rm -f /etc/openvswitch/vswitchd.cacert
     rm -f /var/xapi/network.dbcache
 
-    if test "$PRODUCT_VERSION" != "5.5.0"; then
-        # Configure system to use bridge
-        echo bridge > /etc/xensource/network.conf
-    else
-        # Get rid of network.conf entirely, to make the system pristine.
-        rm -f /etc/xensource/network.conf
-    fi
+    # Configure system to use bridge
+    echo bridge > /etc/xensource/network.conf
 
     printf "\nYou MUST reboot the server now to complete the change to\n"
     printf "standard Xen networking.  Attempts to modify networking on the\n"
@@ -371,7 +297,6 @@ fi
 /etc/logrotate.d/openvswitch
 /etc/profile.d/openvswitch.sh
 /lib/modules/%{xen_version}/kernel/extra/openvswitch/openvswitch_mod.ko
-/lib/modules/%{xen_version}/kernel/extra/openvswitch/brcompat_mod.ko
 /usr/share/openvswitch/python/ovs/__init__.py
 /usr/share/openvswitch/python/ovs/daemon.py
 /usr/share/openvswitch/python/ovs/db/__init__.py
@@ -406,7 +331,6 @@ fi
 /usr/share/openvswitch/scripts/sysconfig.template
 /usr/share/openvswitch/scripts/ovs-save
 /usr/share/openvswitch/vswitch.ovsschema
-/usr/sbin/ovs-brcompatd
 /usr/sbin/ovs-vswitchd
 /usr/sbin/ovsdb-server
 /usr/bin/ovs-appctl
@@ -424,7 +348,6 @@ fi
 /usr/share/man/man1/ovsdb-tool.1.gz
 /usr/share/man/man5/ovs-vswitchd.conf.db.5.gz
 /usr/share/man/man8/ovs-appctl.8.gz
-/usr/share/man/man8/ovs-brcompatd.8.gz
 /usr/share/man/man8/ovs-dpctl.8.gz
 /usr/share/man/man8/ovs-ofctl.8.gz
 /usr/share/man/man8/ovs-parse-leaks.8.gz
@@ -434,7 +357,10 @@ fi
 /usr/share/man/man8/ovs-vsctl.8.gz
 /usr/share/man/man8/ovs-vswitchd.8.gz
 /var/lib/openvswitch
+%exclude /lib/modules/%{xen_version}/kernel/extra/openvswitch/brcompat_mod.ko
 %exclude /usr/lib/xsconsole/plugins-base/*.py[co]
+%exclude /usr/sbin/ovs-brcompatd
+%exclude /usr/share/man/man8/ovs-brcompatd.8.gz
 %exclude /usr/share/openvswitch/scripts/*.py[co]
 %exclude /usr/share/openvswitch/python/*.py[co]
 %exclude /usr/share/openvswitch/python/ovs/*.py[co]
diff --git a/xenserver/opt_xensource_libexec_InterfaceReconfigureVswitch.py b/xenserver/opt_xensource_libexec_InterfaceReconfigureVswitch.py
index 928e6ce..6a1d4ed 100644
--- a/xenserver/opt_xensource_libexec_InterfaceReconfigureVswitch.py
+++ b/xenserver/opt_xensource_libexec_InterfaceReconfigureVswitch.py
@@ -1,5 +1,5 @@
 # Copyright (c) 2008,2009 Citrix Systems, Inc.
-# Copyright (c) 2009,2010 Nicira Networks.
+# Copyright (c) 2009,2010,2011 Nicira Networks.
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU Lesser General Public License as published
@@ -465,10 +465,6 @@ class DatapathVswitch(Datapath):
         dpname = pif_bridge_name(self._dp)
         
         if pif_is_vlan(self._pif):
-            # XXX this is only needed on XS5.5, because XAPI misguidedly
-            # creates the fake bridge (via bridge ioctl) before it calls us.
-            vsctl_argv += ['--', '--if-exists', 'del-br', bridge]
-
             # configure_datapath() set up the underlying datapath bridge.
             # Stack a VLAN bridge on top of it.
             vsctl_argv += ['--', '--may-exist', 'add-br',
@@ -550,11 +546,6 @@ class DatapathVswitch(Datapath):
         
         bridge = pif_bridge_name(dp)
 
-        #nw = db().get_pif_record(self._pif)['network']
-        #nwrec = db().get_network_record(nw)
-        #vsctl_argv += ['# deconfigure network-uuids']
-        #vsctl_argv += ['--del-entry=bridge.%s.network-uuids=%s' % (bridge,nwrec['uuid'])]
-
         log("deconfigure ipdev %s on %s" % (ipdev,bridge))
         vsctl_argv += ["# deconfigure ipdev %s" % ipdev]
         vsctl_argv += datapath_deconfigure_ipdev(ipdev)
diff --git a/xenserver/usr_lib_xsconsole_plugins-base_XSFeatureVSwitch.py b/xenserver/usr_lib_xsconsole_plugins-base_XSFeatureVSwitch.py
index ae91d63..dab9c77 100644
--- a/xenserver/usr_lib_xsconsole_plugins-base_XSFeatureVSwitch.py
+++ b/xenserver/usr_lib_xsconsole_plugins-base_XSFeatureVSwitch.py
@@ -1,5 +1,5 @@
 # Copyright (c) 2007-2010 Citrix Systems Inc.
-# Copyright (c) 2009,2010 Nicira Networks.
+# Copyright (c) 2009,2010,2011 Nicira Networks.
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -109,10 +109,7 @@ class VSwitchControllerDialogue(Dialogue):
         self.xs_version = data.host.software_version.product_version('')
         pool = data.GetPoolForThisHost()
         if pool is not None:
-            if self.xs_version == "5.5.0":
-                self.controller = pool.get("other_config", {}).get("vSwitchController", "")
-            else:
-                self.controller = pool.get("vswitch_controller", "")
+            self.controller = pool.get("vswitch_controller", "")
         else:
             self.controller = ""
 
@@ -125,8 +122,6 @@ class VSwitchControllerDialogue(Dialogue):
                       lambda: self.syncController()),
 #             ChoiceDef(Lang("Restart ovs-vswitchd"),
 #                       lambda: self.restartService("vswitch")),
-#             ChoiceDef(Lang("Restart ovs-brcompatd"),
-#                       lambda: self.restartService("vswitch-brcompatd"))
             ]
         self.menu = Menu(self, None, Lang("Configure Open vSwitch"), choiceDefs)
 
@@ -250,13 +245,7 @@ class VSwitchControllerDialogue(Dialogue):
         if len(pools) > 1:
             XSLogFatal(Lang("More than one pool for host."))
             return
-        if self.xs_version == "5.5.0":
-            key = "vSwitchController"
-            session.xenapi.pool.remove_from_other_config(pools[0], key)
-            if value != None:
-                session.xenapi.pool.add_to_other_config(pools[0], key, value)
-        else:
-            session.xenapi.pool.set_vswitch_controller(value)
+        session.xenapi.pool.set_vswitch_controller(value)
         Data.Inst().Update()
 
     def _updateActiveServers(self, session):
@@ -294,10 +283,7 @@ class XSFeatureVSwitch:
 
         pool = data.GetPoolForThisHost()
         if pool is not None:
-            if (xs_version == "5.5.0"):
-                dbController = pool.get("other_config", {}).get("vSwitchController", "")
-            else:
-                dbController = pool.get("vswitch_controller", "")
+            dbController = pool.get("vswitch_controller", "")
         else:
             dbController = ""
 
@@ -318,11 +304,6 @@ class XSFeatureVSwitch:
         inPane.AddStatusField(Lang("ovsdb-server status", 20),
                               VSwitchService.Inst("openvswitch", "ovsdb-server").status())
 
-        # Only XenServer 5.5.0 runs ovs-brcompatd
-        if (xs_version == "5.5.0"):
-            inPane.AddStatusField(Lang("ovs-brcompatd status", 20),
-                   VSwitchService.Inst("openvswitch", "ovs-brcompatd").status())
-
         inPane.AddKeyHelpField( {
             Lang("<Enter>") : Lang("Reconfigure"),
             Lang("<F5>") : Lang("Refresh")
diff --git a/xenserver/usr_sbin_xen-bugtool b/xenserver/usr_sbin_xen-bugtool
index aeffed4..1a4fe6f 100755
--- a/xenserver/usr_sbin_xen-bugtool
+++ b/xenserver/usr_sbin_xen-bugtool
@@ -156,12 +156,11 @@ XENSERVER_LOGS = \
     [ VAR_LOG_DIR + x for x in
       ['xensource.log', 'audit.log', 'xenstored-access.log', 'SMlog', 'VMPRlog', 'xen/xenstored-trace.log', 
        'xen/xen-hotplug.log', 'xen/domain-builder-ng.log', 'squeezed.log',
-       'openvswitch/ovs-brcompatd.log', 'openvswitch/ovs-vswitchd.log', 'openvswitch/ovsdb-server.log' ] +
+       'openvswitch/ovs-vswitchd.log', 'openvswitch/ovsdb-server.log' ] +
       [ f % n for n in range(1, 20) \
             for f in ['xensource.log.%d', 'xensource.log.%d.gz','SMlog.%d', 'SMlog.%d.gz', 'VMPRlog.%d', 'VMPRlog.%d.gz',
                       'audit.log.%d', 'audit.log.%d.gz', 'xenstored-access.log.%d', 'xenstored-access.log.%d.gz', \
                       'xen/xenstored-access.log.%d', 'xen/xenstored-access.log.%d.gz', 'squeezed.log.%d', \
-                      'openvswitch/ovs-brcompatd.log.%d', 'openvswitch/ovs-brcompatd.log.%d.gz', \
                       'openvswitch/ovs-vswitchd.log.%d', 'openvswitch/ovs-vswitchd.log.%d.gz', \
                       'openvswitch/ovsdb-server.log.%d', 'openvswitch/ovsdb-server.log.%d.gz']]] \
       + glob.glob('/tmp/qemu.[0-9]*')
diff --git a/xenserver/usr_share_openvswitch_scripts_ovs-external-ids b/xenserver/usr_share_openvswitch_scripts_ovs-external-ids
index 0ebb7ce..77283fe 100755
--- a/xenserver/usr_share_openvswitch_scripts_ovs-external-ids
+++ b/xenserver/usr_share_openvswitch_scripts_ovs-external-ids
@@ -1,5 +1,5 @@
 #!/usr/bin/python
-# Copyright (c) 2009, 2010 Nicira Networks
+# Copyright (c) 2009, 2010, 2011 Nicira Networks
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,8 +17,7 @@
 # A daemon to monitor the external_ids columns of the Bridge and
 # Interface OVSDB tables.  Its primary responsibility is to set the
 # "bridge-id" and "iface-id" keys in the Bridge and Interface tables,
-# respectively.  It also looks for the use of "network-uuids" in the
-# Bridge table and duplicates its value to the preferred "xs-network-uuids".
+# respectively.
 
 import getopt
 import logging, logging.handlers
@@ -125,14 +124,6 @@ def set_external_id(table, record, key, value):
     col = 'external-ids:"' + key + '"="' + value + '"'
     call_vsctl(["set", table, record, col])
 
-# XAPI on XenServer 5.6 uses the external-id "network-uuids" for internal
-# networks, but we now prefer "xs-network-uuids".  Look for its use and
-# write our preferred external-id.
-def update_network_uuids(name, ids):
-    if ids["network-uuids"] and not ids["xs-network-uuids"]:
-        set_external_id("Bridge", name, "xs-network-uuids",
-                ids["network-uuids"])
-
 def update_fail_mode(name):
     rec = get_network_by_bridge(name)
 
@@ -271,9 +262,7 @@ def main(argv):
         for rec in idl.data["Bridge"].itervalues():
             name = rec.name.as_scalar()
             xs_network_uuids = rec.external_ids.get("xs-network-uuids")
-            network_uuids = rec.external_ids.get("network-uuids")
-            new_bridges[name] = {"xs-network-uuids": xs_network_uuids,
-                                 "network-uuids": network_uuids}
+            new_bridges[name] = {"xs-network-uuids": xs_network_uuids}
 
         new_interfaces = {}
         for rec in idl.data["Interface"].itervalues():
@@ -283,10 +272,7 @@ def main(argv):
 
         if bridges != new_bridges:
             for name,ids in new_bridges.items():
-                # Network uuids shouldn't change in the life of a bridge,
-                # so only check for "network-uuids" on creation.
                 if name not in bridges:
-                    update_network_uuids(name, ids)
                     update_fail_mode(name)
 
                 if (name not in bridges) or (bridges[name] != ids):
diff --git a/xenserver/usr_share_openvswitch_scripts_sysconfig.template b/xenserver/usr_share_openvswitch_scripts_sysconfig.template
index 0b356fa..e72f695 100644
--- a/xenserver/usr_share_openvswitch_scripts_sysconfig.template
+++ b/xenserver/usr_share_openvswitch_scripts_sysconfig.template
@@ -1,26 +1,12 @@
 ### Configuration options for openvswitch
 
-# Copyright (C) 2009, 2010 Nicira Networks, Inc.
+# Copyright (C) 2009, 2010, 2011 Nicira Networks, Inc.
 #
 # Copying and distribution of this file, with or without modification,
 # are permitted in any medium without royalty provided the copyright
 # notice and this notice are preserved.  This file is offered as-is,
 # without warranty of any kind.
 
-# ENABLE_BRCOMPAT: If 'y' than emulate linux bridging interfaces
-#    using the brcompat kernel module and ovs-brcompatd daemon
-#    This is required and enabled by default for XenServer 5.5.0,
-#    and not required and not enabled by default for later versions.
-# ENABLE_BRCOMPAT=?
-
-# ENABLE_FAKE_PROC_NET: If 'y' then emulate linux bonding and vlan
-#    files in /proc as if the bonding and vlan demultiplexing done in
-#    ovs-vswitchd were being implemented using existing Linux mechanisms.
-#    This is useful in some cases when replacing existing solutions.
-#    This is required and enabled by default for XenServer 5.5.0,
-#    and not required and not enabled by default for later versions.
-# ENABLE_FAKE_PROC_NET=?
-
 # ENABLE_MONITOR: If 'y' then monitor daemon processes and restart them
 #    if they die due to an error signal.
 # ENABLE_MONITOR=y
@@ -174,65 +160,3 @@
 #     This option's value is honored only when VSWITCHD_VALGRIND_LOG is
 #     set to a nonempty string.
 # VSWITCHD_VALGRIND_OPT=""
-
-# BRCOMPATD_PIDFILE: File in which to store the pid of the running
-#     ovs-brcompatd (the Linux bridge compatibility daemon for ovs-vswitchd).
-#     If this is the empty string, ovs-brcompatd will not be started and
-#     the brcompat_mod kernel module will not be inserted.  Note that
-#     the default is to use brcompat!
-# BRCOMPATD_PIDFILE=/var/run/openvswitch/ovs-brcompatd.pid
-
-# BRCOMPATD_RUN_DIR: Set the directory in which ovs-brcompatd should be
-#     run.  This mainly affects where core files will be placed.
-# BRCOMPATD_RUN_DIR=/var/xen/openvswitch
-
-# BRCOMPATD_PRIORITY: "nice" priority at which to run ovs-vswitchd and related
-#     processes.
-# BRCOMPATD_PRIORITY=-10
-
-# BRCOMPATD_LOGFILE: File to send the FILE_LOGLEVEL log messages to.
-# BRCOMPATD_LOGFILE=/var/log/openvswitch/ovs-brcompatd.log
-
-# BRCOMPATD_FILE_LOGLEVEL: Log level at which to log into the
-#     BRCOMPATD_LOG file.  If this is null or not set the logfile will
-#     not be created and nothing will be sent to it.  This is the
-#     default.  The available options are: EMER, WARN, INFO and DBG.
-# BRCOMPATD_FILE_LOGLEVEL=""
-
-# BRCOMPATD_SYSLOG_LOGLEVEL: Log level at which to log into syslog.  If
-#     this is null or not set the default is to log to syslog
-#     emergency and warning level messages only.
-# BRCOMPATD_SYSLOG_LOGLEVEL="WARN"
-
-# BRCOMPATD_MEMLEAK_LOGFILE: File for logging memory leak data.
-#     Enabling this option will slow ovs-brcompatd significantly.  Do not
-#     enable it except to debug a suspected memory leak.  Use the
-#     ovs-parse-leaks utility included with Open vSwitch to parse the
-#     log file.  For best results, you also need debug symbols.
-# BRCOMPATD_MEMLEAK_LOGFILE=""
-
-# BRCOMPATD_STRACE_LOG: File for logging strace output.
-#     If this is set to a nonempty string, then ovs-brcompatd will run
-#     under strace, whose output will be logged to the specified file.
-#     Enabling this option will slow brcompatd significantly.
-#     BRCOMPATD_STRACE_LOG and BRCOMPATD_VALGRIND_LOG are mutually exclusive.
-# BRCOMPATD_STRACE_LOG=""
-
-# BRCOMPATD_STRACE_OPT: Options to pass to strace.
-#     This option's value is honored only when BRCOMPATD_STRACE_LOG is
-#     set to a nonempty string.
-# BRCOMPATD_STRACE_OPT=""
-
-# BRCOMPATD_VALGRIND_LOG: File for logging valgrind output.
-#     If this is set to a nonempty string, then ovs-brcompatd will run
-#     under valgrind, whose output will be logged to the specified file.
-#     Enabling this option will slow brcompatd by 100X or more.
-#     valgrind is not installed by default on XenServer systems; you must
-#     install it by hand to usefully enable this option.
-#     BRCOMPATD_STRACE_LOG and BRCOMPATD_VALGRIND_LOG are mutually exclusive.
-# BRCOMPATD_VALGRIND_LOG=""
-
-# BRCOMPATD_VALGRIND_OPT: Options to pass to valgrind.
-#     This option's value is honored only when BRCOMPATD_VALGRIND_LOG is
-#     set to a nonempty string.
-# BRCOMPATD_VALGRIND_OPT=""
-- 
1.7.1





More information about the dev mailing list