X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=xenserver%2Fetc_init.d_openvswitch;h=aa65657ec5b6e8e146966b65b307478394e80e21;hb=a256b6e5a98ed6368a83a82a79d4f69f8040c68d;hp=c7d0736aa113411a08a61032e29e8a0b1d2f88f6;hpb=d422c1189901d34125cd2d46552391c333d1f647;p=sliver-openvswitch.git diff --git a/xenserver/etc_init.d_openvswitch b/xenserver/etc_init.d_openvswitch index c7d0736aa..aa65657ec 100755 --- a/xenserver/etc_init.d_openvswitch +++ b/xenserver/etc_init.d_openvswitch @@ -43,6 +43,16 @@ case `cat /etc/xensource/network.conf` in ;; esac +start_ovs_xapi_sync () { + if daemon_is_running ovs-xapi-sync; then + log_success_msg "ovs-xapi-sync is already running" + else + PYTHONPATH=/usr/share/openvswitch/python \ + /usr/share/openvswitch/scripts/ovs-xapi-sync \ + --log-file --pidfile --detach --monitor unix:/var/run/openvswitch/db.sock + fi +} + start () { set $ovs_ctl ${1-start} set "$@" --system-id="$INSTALLATION_UUID" @@ -68,13 +78,7 @@ start () { fi "$@" - if daemon_is_running ovs-xapi-sync; then - log_success_msg "ovs-xapi-sync is already running" - else - PYTHONPATH=/usr/share/openvswitch/python \ - /usr/share/openvswitch/scripts/ovs-xapi-sync \ - --log-file --pidfile --detach --monitor unix:/var/run/openvswitch/db.sock - fi + start_ovs_xapi_sync $ovs_ctl --protocol=gre enable-protocol @@ -91,6 +95,9 @@ force_reload_kmod () { action "Stopping HA daemon" ha_stop_daemon action "Starting HA daemon" ha_start_daemon fi + + action "Stopping ovs-xapi-sync" stop_daemon ovs-xapi-sync + action "Starting ovs-xapi-sync" start_ovs_xapi_sync } stop () { @@ -113,10 +120,9 @@ case $1 in ;; reload|force-reload) # The main OVS daemons keep up-to-date, but ovs-xapi-sync needs help. - pidfile=/var/run/openvswitch/ovs-xapi-sync.pid - if test -e "$pidfile"; then - pid=`cat "$pidfile"` - action "Configuring Open vSwitch external IDs" kill -HUP $pid + if daemon_is_running ovs-xapi-sync; then + action "Configuring Open vSwitch external IDs" \ + ovs-appctl -t ovs-xapi-sync flush-cache fi ;; status)