From f40af195a5b399a6a6cd8d6e91f0c7c2b6e3efc6 Mon Sep 17 00:00:00 2001 From: Ethan Jackson Date: Wed, 29 Feb 2012 18:54:05 -0800 Subject: [PATCH] xenserver: Restart ovs-xapi-sync on kmod reload. Some users never restart OVS, they just reload the kernel module on each new version. Since ovs-xapi-sync is a daemon, a restart is required to use the new code. Therefore, without this patch, users could unwittingly use stale versions of ovs-xapi-sync. Bug #9919. Signed-off-by: Ethan Jackson Diagnosed-by: Ben Pfaff --- xenserver/etc_init.d_openvswitch | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/xenserver/etc_init.d_openvswitch b/xenserver/etc_init.d_openvswitch index c7d0736aa..29f2cf605 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 () { -- 2.43.0