saurav barik
2015-Jul-31 10:20 UTC
[Bridge] Multicast packets are not bridged from ethernet to wireless interface
Hello,
I am working on an Access Point device (AP1) running linux kernel 3.0.34 on
which my bridge configuration is as follows.
~ # brctl show
bridge name bridge id STP enabled interfaces
mbr 8000.xxxxxxxx0271 no eth1
wlan0
wlan0 is connected by a wlan link to another access point AP2. This mbr on
AP1 gets IP address via wlan0. I have a laptop connected to eth1 interface
and it too gets IP address via eth1-bridged-wlan0 (wlan0 is the only uplink
port). All the unicast packets (ping traffic) from the laptop via
eth1-bridged-wlan0 works fine. However when I start a multicast tx (iperf
multicast) from the laptop, the multicast packet reaches eth1 and then gets
dropped in the bridge module. I debugged and found the packets are dropped
at -
br_multicast_flood(struct net_bridge_mdb_entry *mdst, ....)
.... <code snippet>
while (p || rp) {
....
rp = rcu_dereference(hlist_first_rcu(&br->router_list));
p = mdst ? rcu_dereference(mdst->ports) : NULL;
}
if (!prev)
{
/******* packets getting dropped here. *********/
goto out;
}
........
The three pointers mdst, p and rp are NULL. Prior to reaching here, the
packet traversed successfully via
br_handle_frame()->br_handle_frame_finish()->br_multicast_forward()->br_multicast_flood().
The source and multicast destination address in the skb look alright.
Additional Note: I have another ethernet interface on AP1 which is eth0. If
I remove wlan0 and add eth0, then multicast packets successfully pass from
eth1 to eth0 in the bridge module.
Could anybody share some pointer on this? Thank you.
With Regards,
Saurav
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.linuxfoundation.org/pipermail/bridge/attachments/20150731/3d1d95a7/attachment.html>
Linus Lüssing
2015-Jul-31 13:57 UTC
[Bridge] Multicast packets are not bridged from ethernet to wireless interface
Hi Saurav, On Fri, Jul 31, 2015 at 03:50:35PM +0530, saurav barik wrote:> I am working on an Access Point device (AP1) running linux kernel 3.0.34 on > which my bridge configuration is as follows.There were quite some crucial bugs, I'm not quite sure whether 3.0.34 was actually usuable for multicast snooping. Any chance to try a recent kernel? Cheers, Linus