]> git.proxmox.com Git - ovs.git/blobdiff - utilities/ovs-lib.in
utilities: Fix conntrack flush command
[ovs.git] / utilities / ovs-lib.in
index 4c3ad0f0b4beac1450001036f68e70dabedd0fb7..92f98ad9228af4eb7b9c20bfc6c5837316bfd81e 100644 (file)
@@ -503,6 +503,10 @@ ovs_vsctl () {
 ## force-reload-kmod ##
 ## ----------------- ##
 
+ovs_kmod_ctl () {
+    "$dir0/ovs-kmod-ctl" "$@"
+}
+
 internal_interfaces () {
     # Outputs a list of internal interfaces:
     #
@@ -601,6 +605,7 @@ force_reload_kmod () {
     stop_ovsdb
     start_ovsdb || return 1
 
+    action "Flush old conntrack entries" ovs-appctl dpctl/flush-conntrack
     stop_forwarding
 
     if action "Saving interface configuration" save_interfaces; then
@@ -616,15 +621,8 @@ force_reload_kmod () {
     for dp in `ovs-dpctl dump-dps`; do
         action "Removing datapath: $dp" ovs-dpctl del-dp "$dp"
     done
-    action "ovs-appctl dpctl/flush-conntrack"
 
-    for vport in `awk '/^vport_/ { print $1 }' /proc/modules`; do
-        action "Removing $vport module" rmmod $vport
-    done
-
-    if test -e /sys/module/openvswitch; then
-        action "Removing openvswitch module" rmmod openvswitch
-    fi
+    ovs_kmod_ctl remove
 
     # Start vswitchd by asking it to wait till flow restore is finished.
     flow_restore_wait