It's possible that port ordering could cause the block ID to change
after enabling / detecting TC Flower support.  Therefore, fetch the
block_id again after probing.

Fixes: edc2055a2bf7 ("netdev-offload-tc: Flush rules on ingress block when init 
tc flow api")
Cc: Dmytro Linkin <[email protected]>
Co-authored-by: Marcelo Leitner <[email protected]>
Signed-off-by: Marcelo Leitner <[email protected]>
Signed-off-by: Aaron Conole <[email protected]>
---
 lib/netdev-offload-tc.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/netdev-offload-tc.c b/lib/netdev-offload-tc.c
index 875ebef719..8864555d01 100644
--- a/lib/netdev-offload-tc.c
+++ b/lib/netdev-offload-tc.c
@@ -1939,6 +1939,7 @@ netdev_tc_init_flow_api(struct netdev *netdev)
         ovsthread_once_done(&multi_mask_once);
     }
 
+    block_id = get_block_id_from_netdev(netdev);
     error = tc_add_del_qdisc(ifindex, true, block_id, hook);
 
     if (error && error != EEXIST) {
-- 
2.25.1

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to