> On Jun 22, 2015, at 11:12 PM, Nikolay Aleksandrov 
> <niko...@cumulusnetworks.com> wrote:
> 
> 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
> 

Actually I don’t think this is the correct way to go about this because when the
port goes in blocking state and br_multicast_disable_port() is called then all 
groups are deleted
which includes the user-added ones.--
To unsubscribe from this list: send the line "unsubscribe netdev" in

Reply via email to