]> git.baikalelectronics.ru Git - kernel.git/commit
net: sched: fix tc_should_offload for specific clsact classes
authorDaniel Borkmann <daniel@iogearbox.net>
Mon, 6 Jun 2016 20:50:39 +0000 (22:50 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 7 Jun 2016 23:59:53 +0000 (16:59 -0700)
commitb2f7e84344dcddfa9799c73e671cc8ffe6c98351
treef15e2f03239246b5927ac2975feb7ee1e55a1ff7
parent96caef71951818833911190e7a64900de945ba07
net: sched: fix tc_should_offload for specific clsact classes

When offloading classifiers such as u32 or flower to hardware, and the
qdisc is clsact (TC_H_CLSACT), then we need to differentiate its classes,
since not all of them handle ingress, therefore we must leave those in
software path. Add a .tcf_cl_offload() callback, so we can generically
handle them, tested on ixgbe.

Fixes: 7ad81e594432 ("net/sched: cls_flower: Hardware offloaded filters statistics support")
Fixes: 609f1261c1c5 ("net/flower: Introduce hardware offload support")
Fixes: 7616adbae43c ("net: sched: add cls_u32 offload hooks for netdevs")
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: John Fastabend <john.r.fastabend@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/pkt_cls.h
include/net/sch_generic.h
net/sched/cls_flower.c
net/sched/cls_u32.c
net/sched/sch_ingress.c