openwrtv3/target/linux/generic
daniel f576ff05a1 kernel: Fix ipv6 mc snooping if bridge has no ipv6 address
This patch is a backport for current LEDE 4.4 Kernels.
It is already upstream, for linux-next and stable.
The initial commit message is below:

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().

Special thanks to Linus Lüssing.

Signed-off-by: Daniel Danzberger <daniel@dd-wrt.com>
2016-06-30 22:48:39 +02:00
..
base-files update the /init file to start /sbin/init 2013-03-13 18:11:13 +00:00
files kernel: rename B53 symbols to avoid upstream kernel conflict 2016-06-20 08:00:14 +02:00
image treewide: replace nbd@openwrt.org with nbd@nbd.name 2016-06-07 08:58:42 +02:00
patches-3.18 kernel: fix missing break in ubi auto-mounting patch 2016-06-27 08:10:36 +02:00
patches-4.1 kernel: fix missing break in ubi auto-mounting patch 2016-06-27 08:10:36 +02:00
patches-4.4 kernel: Fix ipv6 mc snooping if bridge has no ipv6 address 2016-06-30 22:48:39 +02:00
config-3.18 kernel: Add option to make using filesystem ACL support the default 2016-06-30 22:48:39 +02:00
config-4.1 kernel: Add option to make using filesystem ACL support the default 2016-06-30 22:48:39 +02:00
config-4.4 kernel: Add option to make using filesystem ACL support the default 2016-06-30 22:48:39 +02:00
PATCHES kernel: update PATCHES with a stricter policy 2013-07-09 20:52:07 +00:00