[ovs-dev] [PATCH V3 4/4] netdev-offload-dpdk: Implement flow flush
Eli Britstein
elibr at nvidia.com
Mon Dec 28 10:19:03 UTC 2020
Remove all the rules for the specified netdev.
Signed-off-by: Eli Britstein <elibr at nvidia.com>
Reviewed-by: Gaetan Rivet <gaetanr at nvidia.com>
---
lib/netdev-offload-dpdk.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/lib/netdev-offload-dpdk.c b/lib/netdev-offload-dpdk.c
index dece4fd06..c45dd3e90 100644
--- a/lib/netdev-offload-dpdk.c
+++ b/lib/netdev-offload-dpdk.c
@@ -1585,10 +1585,27 @@ out:
return ret;
}
+static int
+netdev_offload_dpdk_flow_flush(struct netdev *netdev)
+{
+ struct ufid_to_rte_flow_data *data;
+
+ CMAP_FOR_EACH (data, node, &ufid_to_rte_flow) {
+ if (data->netdev != netdev) {
+ continue;
+ }
+
+ netdev_offload_dpdk_flow_destroy(data);
+ }
+
+ return 0;
+}
+
const struct netdev_flow_api netdev_offload_dpdk = {
.type = "dpdk_flow_api",
.flow_put = netdev_offload_dpdk_flow_put,
.flow_del = netdev_offload_dpdk_flow_del,
.init_flow_api = netdev_offload_dpdk_init_flow_api,
.flow_get = netdev_offload_dpdk_flow_get,
+ .flow_flush = netdev_offload_dpdk_flow_flush,
};
--
2.28.0.546.g385c171
More information about the dev
mailing list