aboutsummaryrefslogtreecommitdiffstats
path: root/net/bridge/br_device.c
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2010-02-27 19:41:45 +0000
committerDavid S. Miller <davem@davemloft.net>2010-02-28 00:48:45 -0800
commiteb1d16414339a6e113d89e2cca2556005d7ce919 (patch)
treeb6c49f870cc36241a894a8c723a38e224d41464b /net/bridge/br_device.c
parent025d89c27f54c69cd0e51666d88aada33666bb6c (diff)
downloadkernel_samsung_smdk4412-eb1d16414339a6e113d89e2cca2556005d7ce919.zip
kernel_samsung_smdk4412-eb1d16414339a6e113d89e2cca2556005d7ce919.tar.gz
kernel_samsung_smdk4412-eb1d16414339a6e113d89e2cca2556005d7ce919.tar.bz2
bridge: Add core IGMP snooping support
This patch adds the core functionality of IGMP snooping support without actually hooking it up. So this patch should be a no-op as far as the bridge's external behaviour is concerned. All the new code and data is controlled by the Kconfig option BRIDGE_IGMP_SNOOPING. A run-time toggle is also available. The multicast switching is done using an hash table that is lockless on the read-side through RCU. On the write-side the new multicast_lock is used for all operations. The hash table supports dynamic growth/rehashing. The hash table will be rehashed if any chain length exceeds a preset limit. If rehashing does not reduce the maximum chain length then snooping will be disabled. These features may be added in future (in no particular order): * IGMPv3 source support * Non-querier router detection * IPv6 Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bridge/br_device.c')
0 files changed, 0 insertions, 0 deletions