[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20160628.080442.1941457943482109633.davem@davemloft.net>
Date: Tue, 28 Jun 2016 08:04:42 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: linus.luessing@...3.blue
Cc: daniel@...wrt.com, bridge@...ts.linux-foundation.org,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
stephen@...workplumber.org, uw@...do.com, ulrich.weber@...hos.com
Subject: Re: [PATCH net] Bridge: Fix ipv6 mc snooping if bridge has no ipv6
address
From: Linus Lüssing <linus.luessing@...3.blue>
Date: Sat, 25 Jun 2016 16:20:28 +0200
> On Fri, Jun 24, 2016 at 12:35:18PM +0200, Daniel Danzberger wrote:
>> The bridge is falsly dropping ipv6 mulitcast packets if there is:
>> 1. No ipv6 address assigned on the brigde.
>> 2. No external mld querier present.
>> 3. The internal querier enabled.
>>
>> When the bridge fails to build mld queries, because it has no
>> ipv6 address, it slilently returns, but keeps the local querier enabled.
>> This specific case causes confusing packet loss.
>>
>> Ipv6 multicast snooping can only work if:
>> a) An external querier is present
>> OR
>> b) The bridge has an ipv6 address an is capable of sending own queries
>>
>> Otherwise it has to forward/flood the ipv6 multicast traffic,
>> because snooping cannot work.
>>
>> This patch fixes the issue by adding a flag to the bridge struct that
>> indicates that there is currently no ipv6 address assinged to the bridge
>> and returns a false state for the local querier in
>> __br_multicast_querier_exists().
>
> Fixes: 1d81d4c3dd88 ("bridge: check return value of ipv6_dev_get_saddr()")
You're missing an initial 'd' in that SHA1-ID.
With that fixed, applied and queued up for -stable.
Powered by blists - more mailing lists