Re: [RFC PATCH] net/core: fix skb handling on netif serves for bothbridge and vlan

From: Nicolas de PesloÃan
Date: Thu Mar 03 2011 - 16:42:33 EST


Le 03/03/2011 14:53, Ben Hutchings a Ãcrit :
On Thu, 2011-03-03 at 18:55 +0800, Xiaotian Feng wrote:
Consider network topology as follows:

eth0 eth1
|_____|
|
bond0 --- br0
|
vlan0 --- br1

bond0 serves for both br0 and vlan0, if a vlan tagged packet was sent
to br1 through bond0, bridge handling code is seeing the packet on bond0
and handing it off to my "legacy" bridge before vlan_tx_tag_present
and vlan_hwaccel_do_receive even haven't a chance to look at it.
[...]

This used to work if the underlying device (bond0 in your example)
implemented VLAN tag extraction, because the VLAN group would be checked
before the bridge. But it never worked for devices without VLAN tag
extraction. Perhaps we should just prevent this configuration.

If Jiri Pirko eventually move vlan processing to rx_handler, then the setup won't be possible, because bond0 would require two rx_handlers : one for bridge (-> br0) and one for vlan (-> vlan0).

Or we need several rx_handlers per net_device, if the above setup is a real one.

Nicolas.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/