eb1d164143
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>
17 lines
474 B
Makefile
17 lines
474 B
Makefile
#
|
|
# Makefile for the IEEE 802.1d ethernet bridging layer.
|
|
#
|
|
|
|
obj-$(CONFIG_BRIDGE) += bridge.o
|
|
|
|
bridge-y := br.o br_device.o br_fdb.o br_forward.o br_if.o br_input.o \
|
|
br_ioctl.o br_notify.o br_stp.o br_stp_bpdu.o \
|
|
br_stp_if.o br_stp_timer.o br_netlink.o
|
|
|
|
bridge-$(CONFIG_SYSFS) += br_sysfs_if.o br_sysfs_br.o
|
|
|
|
bridge-$(CONFIG_BRIDGE_NETFILTER) += br_netfilter.o
|
|
|
|
bridge-$(CONFIG_BRIDGE_IGMP_SNOOPING) += br_multicast.o
|
|
|
|
obj-$(CONFIG_BRIDGE_NF_EBTABLES) += netfilter/
|