]> granicus.if.org Git - ipset/commit
net: sched: fix skb->protocol use in case of accelerated vlan path
authorJiri Pirko <jiri@resnulli.us>
Tue, 11 Oct 2016 20:09:08 +0000 (22:09 +0200)
committerJozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Tue, 11 Oct 2016 20:09:08 +0000 (22:09 +0200)
commitf0c110ecc4b8b04e1bbf6766284d3bf52cd73a30
treec316da5f31598e8dffff938979e1950fc30ed42b
parent15d7b6d7a3615c897438955257a7a4f0390ff1d8
net: sched: fix skb->protocol use in case of accelerated vlan path

tc code implicitly considers skb->protocol even in case of accelerated
vlan paths and expects vlan protocol type here. However, on rx path,
if the vlan header was already stripped, skb->protocol contains value
of next header. Similar situation is on tx path.

So for skbs that use skb->vlan_tci for tagging, use skb->vlan_proto instead.

Reported-by: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
configure.ac
kernel/include/linux/netfilter/ipset/ip_set_compat.h.in
kernel/net/sched/em_ipset.c