diff mbox

[ovs-dev,ovs,V1,9/9] dpif-hw-acc: flow flush

Message ID 1478012010-32494-10-git-send-email-paulb@mellanox.com
State Changes Requested
Headers show

Commit Message

Paul Blakey Nov. 1, 2016, 2:53 p.m. UTC
added support to flush all offloaded flows from tc.

Signed-off-by: Paul Blakey <paulb@mellanox.com>
Signed-off-by: Shahar Klein <shahark@mellanox.com>
---
 lib/dpif-hw-acc.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)
diff mbox

Patch

diff --git a/lib/dpif-hw-acc.c b/lib/dpif-hw-acc.c
index 0087e9c..98a99de 100644
--- a/lib/dpif-hw-acc.c
+++ b/lib/dpif-hw-acc.c
@@ -862,7 +862,19 @@  static int
 dpif_hw_acc_flow_flush(struct dpif *dpif_)
 {
     struct dpif_hw_acc *dpif = dpif_hw_acc_cast(dpif_);
+    struct port_netdev_hash_data *data;
+
+    VLOG_DBG("%s %d %s, (%p) flush start\n", __FILE__, __LINE__, __func__,
+             dpif);
+    HMAP_FOR_EACH(data, node, &dpif->port_to_netdev) {
+        if (data->netdev) {
+            VLOG_DBG("%s %d %s, (%p) flusing port: %d, netdev: %p\n", __FILE__,
+                     __LINE__, __func__, dpif, data->port, data->netdev);
+            tc_flush_flower(netdev_get_ifindex(data->netdev));
+        }
+    }
 
+    VLOG_DBG("%s %d %s, (%p) flush end\n", __FILE__, __LINE__, __func__, dpif);
     return dpif->lp_dpif_netlink->dpif_class->
         flow_flush(dpif->lp_dpif_netlink);
 }