Subject: Re: Multicast packets being lost (3.10 stable)

From: Linus Lüssing <[email-masked]>
Date: Tue, 25 Mar 2014 14:06:07 +0100

That commit is supposed to be a fix and seems to be a easily
cherry-pickable on top of 3.10. So I think it's suitable for
stable

There are two follow-up commit for this particular patch that I'm aware
of: "bridge: separate querier and query timer into IGMP/IPv4
and MLD/IPv6 ones" (cc0fdd80). That's just an optimization
and can be ignored for stable.

The second one is "bridge: don't try to update timers in case of
broken MLD queries" (248ba8ec0). Which is a direct fix for
b00589af3 and should therefore go into stable, too, if b00589af3
goes into stable.

Cheers, Linus

On Mon, Mar 24, 2014 at 09:41:07AM -0700, Stephen Hemminger wrote:
> We are seeing multicast snooping related issues.
> Is there some reason this commit never went into stable (3.10)
> 
> commit b00589af3b04736376f24625ab0b394642e89e29
> Author: Linus Lüssing <[email-masked]>
> Date:   Thu Aug 1 01:06:20 2013 +0200
> 
>     bridge: disable snooping if there is no querier
>     
>     If there is no querier on a link then we won't get periodic reports and
>     therefore won't be able to learn about multicast listeners behind ports,
>     potentially leading to lost multicast packets, especially for multicast
>     listeners that joined before the creation of the bridge.
>     
>     These lost multicast packets can appear since c5c23260594
>     ("bridge: Add multicast_querier toggle and disable queries by default")
>     in particular.
>     
>     With this patch we are flooding multicast packets if our querier is
>     disabled and if we didn't detect any other querier.
>     
>     A grace period of the Maximum Response Delay of the querier is added to
>     give multicast responses enough time to arrive and to be learned from
>     before disabling the flooding behaviour again.
>     
>     Signed-off-by: Linus Lüssing <[email-masked]>
>     Signed-off-by: David S. Miller <[email-masked]>