From: wenxu <we...@ucloud.cn> Currently kernel tc subsystem can do conntrack in act_ct. But when several fragment packets go through the act_ct, function tcf_ct_handle_fragments will defrag the packets to a big one. But the last action will redirect mirred to a device which maybe lead the reassembly big packet over the mtu of target device.
The first patch fix miss init the qdisc_skb_cb->mru The send one refactor the hanle of xmit in act_mirred and prepare for the third one The last one add implict packet fragment support to fix the over mtu for defrag in act_ct. wenxu (3): net/sched: fix miss init the mru in qdisc_skb_cb net/sched: act_mirred: refactor the handle of xmit net/sched: act_frag: add implict packet fragment support. include/net/act_api.h | 18 +++++ include/net/sch_generic.h | 5 -- net/core/dev.c | 2 + net/sched/Kconfig | 13 ++++ net/sched/Makefile | 1 + net/sched/act_api.c | 44 +++++++++++++ net/sched/act_ct.c | 7 ++ net/sched/act_frag.c | 164 ++++++++++++++++++++++++++++++++++++++++++++++ net/sched/act_mirred.c | 21 ++++-- 9 files changed, 264 insertions(+), 11 deletions(-) create mode 100644 net/sched/act_frag.c -- 1.8.3.1