Currently when a port goes in blocking state the multicast is not disabled. Fix it by disabling a port if its state has transitioned to blocking, this has effect for both user- and kernel-space stp.
Reported-by: Herbert Xu <herb...@gondor.apana.org.au> Signed-off-by: Nikolay Aleksandrov <niko...@cumulusnetworks.com> --- note: this is on top of patch: "bridge: multicast: start querier timer when running user-space stp" net/bridge/br_stp.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/net/bridge/br_stp.c b/net/bridge/br_stp.c index e7ab74b405a1..1a73c5595f52 100644 --- a/net/bridge/br_stp.c +++ b/net/bridge/br_stp.c @@ -463,6 +463,8 @@ void br_port_state_selection(struct net_bridge *br) if (p->state != BR_STATE_BLOCKING) br_multicast_enable_port(p); + else + br_multicast_disable_port(p); if (p->state == BR_STATE_FORWARDING) ++liveports; } -- 2.4.3 -- To unsubscribe from this list: send the line "unsubscribe netdev" in