On Tue, May 26, 2015 at 06:29:57PM -0400, Vivien Didelot wrote: > Hi, > > I'm doing tests with VLAN support in DSA and I noticed that the EDSA > frame is prepended with a 802.1q header once queued to the underlying > network device, in net/dsa/tag_edsa.c: > > skb->dev = p->parent->dst->master_netdev; > dev_queue_xmit(skb); > > This issue can be observed with the following dump: > > curl -s http://ix.io/iIv | tcpdump -en -r - > > I suspect that the DSA code must clear some VLAN flags in the skb > structure, in order to prevent the additional encapsulation by the lower > level. Does this make sense? >
Hi Vivien, Interesting question. Does the underlying network device support VLAN HW acceleration (NETIF_F_HW_VLAN_CTAG_RX, NETIF_F_HW_VLAN_CTAG_TX) ? If yes, the dsa code may need to move the tag into the header. If we are lucky, a call to vlan_hwaccel_push_inside() might do it. Do you have some vlan dsa code to share, by any chance ? That might save me some time, as I am looking into it as well. Thanks, Guenter -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html