Not local datapath related entries were added and removed in every loops,
causing constant pinctrl wakeup.
Fixes: 70ff8243040f ("OVN: Add IGMP SB definitions and ovn-controller support")
Signed-off-by: Xavier Simonart <[email protected]>
---
-v2: Fixes test issue reported by Ales.
---
controller/pinctrl.c | 3 +++
tests/system-ovn.at | 3 +++
2 files changed, 6 insertions(+)
diff --git a/controller/pinctrl.c b/controller/pinctrl.c
index 1ad058f2b..94a4e9bce 100644
--- a/controller/pinctrl.c
+++ b/controller/pinctrl.c
@@ -5751,6 +5751,9 @@ ip_mcast_sync(struct ovsdb_idl_txn *ovnsb_idl_txn,
struct ip_mcast_snoop_cfg cfg;
bool flush_groups = false;
+ if (!get_local_datapath(local_datapaths, dp_key)) {
+ continue;
+ }
ip_mcast_snoop_cfg_load(&cfg, ip_mcast);
if (ip_mcast_snoop_state_update(dp_key, &cfg, &flush_groups)) {
notify = true;
diff --git a/tests/system-ovn.at b/tests/system-ovn.at
index 8d1f21609..d22e75a76 100644
--- a/tests/system-ovn.at
+++ b/tests/system-ovn.at
@@ -5027,6 +5027,9 @@ OVS_WAIT_UNTIL([
test "${n_reset}" = "1"
])
+ovn-appctl coverage/show > ovn_counters
+AT_CHECK([test 50 -gt $(ovn-appctl -t ovn-controller coverage/read-counter
pinctrl_notify_handler_thread)], [0])
+
# Check that we do not get too many immediate wake up.
# Tolerate a few for any race conditions.
AT_CHECK([test 5 -gt `cat ovn-controller.log | \
--
2.47.1
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev