I applied this to main and branch-21.09. If this should be backported
further, please let me know.
On 11/17/21 13:26, Mark Michelson wrote:
Thanks Lorenzo,
Acked-by: Mark Michelson <[email protected]>
On 11/17/21 13:08, Lorenzo Bianconi wrote:
In the current codebase mcast_query_list is updated only if IGMP
snooping is enabled in ovn configuration. However querier configuration
is always updated ending up having duplicated entries in
mcast_query_list list. Fix the issue updating mcast_query_list list even
if IGMP snoop is disabled.
Tested-by: Tim Rozet <[email protected]>
Fixes: 70ff824304 ("OVN: Add IGMP SB definitions and ovn-controller
support")
Signed-off-by: Lorenzo Bianconi <[email protected]>
---
controller/pinctrl.c | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/controller/pinctrl.c b/controller/pinctrl.c
index 19ef5fa2a..ae5320e09 100644
--- a/controller/pinctrl.c
+++ b/controller/pinctrl.c
@@ -4833,6 +4833,18 @@ static bool
ip_mcast_snoop_configure(struct ip_mcast_snoop *ip_ms,
const struct ip_mcast_snoop_cfg *cfg)
{
+ bool old_querier_enabled =
+ (ip_ms->cfg.querier_v4_enabled ||
ip_ms->cfg.querier_v6_enabled);
+
+ bool querier_enabled =
+ (cfg->querier_v4_enabled || cfg->querier_v6_enabled);
+
+ if (old_querier_enabled && !querier_enabled) {
+ ovs_list_remove(&ip_ms->query_node);
+ } else if (!old_querier_enabled && querier_enabled) {
+ ovs_list_push_back(&mcast_query_list, &ip_ms->query_node);
+ }
+
if (cfg->enabled) {
if (!ip_mcast_snoop_enable(ip_ms)) {
return false;
@@ -4840,18 +4852,6 @@ ip_mcast_snoop_configure(struct ip_mcast_snoop
*ip_ms,
if (ip_ms->cfg.seq_no != cfg->seq_no) {
ip_mcast_snoop_flush(ip_ms);
}
-
- bool old_querier_enabled =
- (ip_ms->cfg.querier_v4_enabled ||
ip_ms->cfg.querier_v6_enabled);
-
- bool querier_enabled =
- (cfg->querier_v4_enabled || cfg->querier_v6_enabled);
-
- if (old_querier_enabled && !querier_enabled) {
- ovs_list_remove(&ip_ms->query_node);
- } else if (!old_querier_enabled && querier_enabled) {
- ovs_list_push_back(&mcast_query_list, &ip_ms->query_node);
- }
} else {
ip_mcast_snoop_disable(ip_ms);
goto set_fields;
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev