X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=xenserver%2Fetc_init.d_openvswitch;h=b7feb9b43d3b20969ed53af500c6e59eb3f50c3f;hb=392804e7ee2753cea831503fbdbafc2d7780862a;hp=0101562ff1c622d0f82c6bc65f90f9dde5c7305a;hpb=7c632268f215bc91a26831b171c4ba04a343ae8e;p=openvswitch diff --git a/xenserver/etc_init.d_openvswitch b/xenserver/etc_init.d_openvswitch index 0101562f..b7feb9b4 100755 --- a/xenserver/etc_init.d_openvswitch +++ b/xenserver/etc_init.d_openvswitch @@ -21,11 +21,19 @@ . /etc/init.d/functions +. /etc/xensource-inventory test -e /etc/sysconfig/openvswitch && . /etc/sysconfig/openvswitch # General config variables in /etc/sysconfig/openvswitch -: ${ENABLE_BRCOMPAT:=y} -: ${ENABLE_FAKE_PROC_NET:=y} +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 : ${ENABLE_MONITOR:=y} : ${FORCE_COREFILES:=y} @@ -115,10 +123,10 @@ function insert_modules_if_required { action "Inserting llc module" modprobe llc action "Inserting openvswitch module" modprobe openvswitch_mod fi - if [ -n "$BRCOMPATD_PIDFILE" ] && ! lsmod | grep -q "brcompat_mod"; then + if [ "$ENABLE_BRCOMPAT" = "y" ] && [ -n "$BRCOMPATD_PIDFILE" ] && ! lsmod | grep -q "brcompat_mod"; then action "Inserting brcompat module" modprobe brcompat_mod fi - if [ -f "/lib/modules/`uname -r`/kernel/net/openvswitch/ip_gre_mod.ko" ] && ! lsmod | grep -q "ip_gre_mod"; then + if [ -f "/lib/modules/`uname -r`/kernel/extra/openvswitch/ip_gre_mod.ko" ] && ! lsmod | grep -q "ip_gre_mod"; then action "Inserting ip_gre module" modprobe ip_gre_mod fi } @@ -338,10 +346,9 @@ EOF } function set_system_uuid { - system_uuid=$(. /etc/xensource-inventory && echo $INSTALLATION_UUID) - if test -n "$system_uuid"; then + if test -n "$INSTALLATION_UUID"; then action "Configuring Open vSwitch system UUID" true - $vsctl --no-wait set Open_vSwitch . external-ids:system-uuid="$system_uuid" + $vsctl --no-wait set Open_vSwitch . external-ids:system-uuid="$INSTALLATION_UUID" else action "Configuring Open vSwitch system UUID" false fi @@ -423,11 +430,10 @@ case "$1" in strace -p $(cat "$BRCOMPATD_PIDFILE") "$@" ;; status) - status -p "$OVSDB_SERVER_PIDFILE" ovsdb-server - status -p "$VSWITCHD_PIDFILE" ovs-vswitchd - if [ "$ENABLE_BRCOMPAT" = "y" ] ; then - status -p ovs-brcompatd.pid ovs-brcompatd - fi + status -p "$OVSDB_SERVER_PIDFILE" ovsdb-server && + status -p "$VSWITCHD_PIDFILE" ovs-vswitchd && + (test "$ENABLE_BRCOMPAT" != "y" || + status -p "$BRCOMPATD_PIDFILE" ovs-brcompatd) ;; version) /usr/sbin/ovsdb-server -V