[ovs-dev] [PATCH ovs V8 24/26] netdev: Init flow api on already added ports on offload enable
Roi Dayan
roid at mellanox.com
Wed May 3 15:08:15 UTC 2017
From: Paul Blakey <paulb at mellanox.com>
Ports already added to a switch are not being initialized for offloading
so when enabling offload we need to go over those ports.
Signed-off-by: Paul Blakey <paulb at mellanox.com>
Reviewed-by: Roi Dayan <roid at mellanox.com>
Reviewed-by: Simon Horman <simon.horman at netronome.com>
---
lib/netdev.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/lib/netdev.c b/lib/netdev.c
index ad589e6..a00ea5e 100644
--- a/lib/netdev.c
+++ b/lib/netdev.c
@@ -2314,6 +2314,18 @@ netdev_ports_flow_get(const void *obj, struct match *match,
bool netdev_flow_api_enabled = false;
#ifdef __linux__
+static void
+netdev_ports_flow_init(void)
+{
+ struct port_to_netdev_data *data;
+
+ ovs_mutex_lock(&netdev_hmap_mutex);
+ HMAP_FOR_EACH(data, node, &port_to_netdev) {
+ netdev_init_flow_api(data->netdev);
+ }
+ ovs_mutex_unlock(&netdev_hmap_mutex);
+}
+
void
netdev_set_flow_api_enabled(const struct smap *ovs_other_config)
{
@@ -2328,6 +2340,8 @@ netdev_set_flow_api_enabled(const struct smap *ovs_other_config)
tc_set_policy(smap_get_def(ovs_other_config, "tc-policy",
TC_POLICY_DEFAULT));
+ netdev_ports_flow_init();
+
ovsthread_once_done(&once);
}
}
--
2.7.4
More information about the dev
mailing list