Wed, Aug 17, 2016 at 12:36:10PM CEST, had...@mellanox.com wrote: >Early in the datapath skb_vlan_untag function is called, stripped >the vlan from the skb and set skb->vlan_tci and skb->vlan_proto fields. > >The current dissection doesn't handle stripped vlan packets correctly. >In some flows, vlan doesn't exist in skb->data anymore when applying >flow dissection on the skb, fix that. > >In case vlan info wasn't stripped before applying flow_dissector (RPS >flow for example), or in case of skb with multiple vlans (e.g. 802.1ad), >get the vlan info from skb->data. The flow_dissector correctly skips >any number of vlans and stores only the first level vlan. > >Fixes: 0744dd00c1b1 ('net: introduce skb_flow_dissect()') >Signed-off-by: Hadar Hen Zion <had...@mellanox.com>
Acked-by: Jiri Pirko <j...@mellanox.com>