X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=xenserver%2Fetc_init.d_vswitch;h=884755099e15daaa04928dbc2a365877649776b1;hb=dac3c52f893f7df16f935ef4875c5467abd4ea23;hp=8bb8e2a75930f172cf2884d17dde4f78e538548f;hpb=6867bc3633fc5734eb81cd8684f0fed5df319bdd;p=sliver-openvswitch.git diff --git a/xenserver/etc_init.d_vswitch b/xenserver/etc_init.d_vswitch index 8bb8e2a75..884755099 100755 --- a/xenserver/etc_init.d_vswitch +++ b/xenserver/etc_init.d_vswitch @@ -24,8 +24,8 @@ test -e /etc/sysconfig/vswitch && . /etc/sysconfig/vswitch # General config variables in /etc/sysconfig/vswitch -: ${ENABLE_BRCOMPAT:=y} -: ${ENABLE_FAKE_PROC_NET:=y} +: ${ENABLE_BRCOMPAT:=n} +: ${ENABLE_FAKE_PROC_NET:=n} : ${FORCE_COREFILES:=y} # Config variables specific to ovs-vswitchd @@ -34,8 +34,8 @@ test -e /etc/sysconfig/vswitch && . /etc/sysconfig/vswitch : ${VSWITCHD_RUN_DIR:=/var/xen/vswitch} : ${VSWITCHD_PRIORITY:=-10} : ${VSWITCHD_LOGFILE:=/var/log/ovs-vswitchd.log} -: ${VSWITCHD_FILE_LOGLEVEL:=} -: ${VSWITCHD_SYSLOG_LOGLEVEL:=WARN} +: ${VSWITCHD_FILE_LOGLEVEL:=INFO} +: ${VSWITCHD_SYSLOG_LOGLEVEL:=ERR} : ${VSWITCHD_MEMLEAK_LOGFILE:=} : ${VSWITCHD_STRACE_LOG:=} : ${VSWITCHD_STRACE_OPT:=} @@ -47,8 +47,8 @@ test -e /etc/sysconfig/vswitch && . /etc/sysconfig/vswitch : ${BRCOMPATD_RUN_DIR:=/var/xen/vswitch} : ${BRCOMPATD_PRIORITY:=-10} : ${BRCOMPATD_LOGFILE:=/var/log/ovs-brcompatd.log} -: ${BRCOMPATD_FILE_LOGLEVEL:=} -: ${BRCOMPATD_SYSLOG_LOGLEVEL:=INFO} +: ${BRCOMPATD_FILE_LOGLEVEL:=INFO} +: ${BRCOMPATD_SYSLOG_LOGLEVEL:=ERR} : ${BRCOMPATD_MEMLEAK_LOGFILE:=} : ${BRCOMPATD_STRACE_LOG:=} : ${BRCOMPATD_STRACE_OPT:=} @@ -89,7 +89,7 @@ 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 } @@ -105,9 +105,13 @@ function remove_modules { function reload_vswitchd { if [ -f "$VSWITCHD_PIDFILE" ]; then - "$appctl" \ - --target=ovs-vswitchd.$(cat "$VSWITCHD_PIDFILE").ctl \ - --execute=vswitchd/reload + "$appctl" --target=/var/run/ovs-vswitchd.`cat $VSWITCHD_PIDFILE`.ctl vswitchd/reload + fi +} + +function reload_brcompatd { + if [ -f "$BRCOMPATD_PIDFILE" ]; then + "$appctl" --target=/var/run/ovs-brcompatd.`cat $BRCOMPATD_PIDFILE`.ctl vlog/reopen fi } @@ -165,7 +169,7 @@ function start_brcompatd { mkdir -p "$BRCOMPATD_RUN_DIR" fi cd "$BRCOMPATD_RUN_DIR" - if [ ! -n "$BRCOMPATD_FILE_LOGLEVEL" ]; then + if [ -n "$BRCOMPATD_FILE_LOGLEVEL" ]; then logfile_level_opt="-vANY:FILE:${BRCOMPATD_FILE_LOGLEVEL}" logfile_file_opt="--log-file=$BRCOMPATD_LOGFILE" fi @@ -190,7 +194,7 @@ function start_brcompatd { valgrind_opt="valgrind --log-file=$BRCOMPATD_VALGRIND_LOG $BRCOMPATD_VALGRIND_OPT" daemonize="n" fi - appctl_cmd="$appctl -t /var/run/ovs-vswitchd.\`cat $VSWITCHD_PIDFILE\`.ctl -e '%s'" + appctl_cmd="$appctl --target=/var/run/ovs-vswitchd.\`cat $VSWITCHD_PIDFILE\`.ctl %s" if [ "$daemonize" != "y" ]; then # Start in background and force a "success" message action "Starting ovs-brcompatd ($strace_opt$valgrind_opt)" true @@ -257,16 +261,29 @@ function start { if [ ! -e "$VSWITCHD_CONF" ]; then warning "$VSWITCHD_CONF does not exist" action "Creating empty $VSWITCHD_CONF" touch "$VSWITCHD_CONF" + elif [ ! -e /var/run/vswitch.booted ]; then + touch /var/run/vswitch.booted + /usr/bin/ovs-cfg-mod '-vANY:console:emer' -F "$VSWITCHD_CONF" \ + '--del-match=bridge.*' \ + '--del-match=port.*' \ + '--del-match=bonding.*' \ + '--del-match=iface.*' \ + '--del-match=vlan.*.trunks=*' \ + '--del-match=vlan.*.tag=*' fi start_vswitchd - start_brcompatd + if [ "${ENABLE_BRCOMPAT}" = "y" ] ; then + start_brcompatd + fi reload_vswitchd # ensures ovs-vswitchd has fully read config file. + touch /var/lock/subsys/vswitch } function stop { stop_brcompatd stop_vswitchd + rm -f /var/lock/subsys/vswitch } function restart { @@ -288,6 +305,7 @@ case "$1" in ;; reload) reload_vswitchd + reload_brcompatd ;; strace-vswitchd) shift @@ -299,7 +317,12 @@ case "$1" in ;; status) status -p ovs-vswitchd.pid ovs-vswitchd - status -p ovs-brcompatd.pid ovs-brcompatd + rc=$? + if [ $rc -eq 0 ] && [ "$ENABLE_BRCOMPAT" = "y" ] ; then + status -p ovs-brcompatd.pid ovs-brcompatd + rc=$? + fi + exit $rc ;; version) /usr/sbin/ovs-vswitchd -V