X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=xenserver%2Fetc_init.d_vswitch;h=18dd7bc69663f3fae3a14e0369a7e1b55237878e;hb=5c8ef29c2efb73ab3bc8ac30f1499fb6499692cf;hp=01450ed5d07a43c5638955dbd230bb99b5b896a5;hpb=3f355f47f8e7343e909ccfa854454d667baf3c38;p=openvswitch diff --git a/xenserver/etc_init.d_vswitch b/xenserver/etc_init.d_vswitch index 01450ed5..18dd7bc6 100755 --- a/xenserver/etc_init.d_vswitch +++ b/xenserver/etc_init.d_vswitch @@ -92,6 +92,9 @@ function insert_modules_if_required { if [ -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/vswitch/ip_gre_mod.ko" ] && ! lsmod | grep -q "ip_gre_mod"; then + action "Inserting ip_gre module" modprobe ip_gre_mod + fi } function remove_modules { @@ -101,20 +104,20 @@ function remove_modules { if lsmod | grep -q "openvswitch_mod"; then action "Removing openvswitch module" rmmod openvswitch_mod.ko fi + if lsmod | grep -q "ip_gre_mod"; then + action "Removing ip_gre module" rmmod ip_gre_mod.ko + fi } 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=ovs-brcompatd.$(cat "$BRCOMPATD_PIDFILE").ctl --reopen + "$appctl" --target=/var/run/ovs-brcompatd.`cat $BRCOMPATD_PIDFILE`.ctl vlog/reopen fi } @@ -197,7 +200,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 @@ -261,6 +264,9 @@ function start { # ovs-vswitchd needs a few per bridge ulimit -n 4096 + # Allow GRE traffic. + iptables -I INPUT -p gre -j ACCEPT + if [ ! -e "$VSWITCHD_CONF" ]; then warning "$VSWITCHD_CONF does not exist" action "Creating empty $VSWITCHD_CONF" touch "$VSWITCHD_CONF" @@ -271,7 +277,8 @@ function start { '--del-match=port.*' \ '--del-match=bonding.*' \ '--del-match=iface.*' \ - '--del-match=vlan.*' + '--del-match=vlan.*.trunks=*' \ + '--del-match=vlan.*.tag=*' fi start_vswitchd