[PATCH net-next v2 0/3] make nf_ct_frag/6_gather elide the skb CB clear

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: wenxu <wenxu@xxxxxxxxx>

Add nf_ct_frag_gather and Make nf_ct_frag6_gather elide the CB clear 
when packets are defragmented by connection tracking. This can make
each subsystem such as br_netfilter, openvswitch, act_ct do defrag
without restore the CB. 
This also avoid serious crashes and problems in  ct subsystem.
Because Some packet schedulers store pointers in the qdisc CB private
area and parallel accesses to the SKB.

This series following up
http://patchwork.ozlabs.org/project/netdev/patch/1593422178-26949-1-git-send-email-wenxu@xxxxxxxxx/

patch1: add nf_ct_frag_gather elide the CB clear
patch2: make nf_ct_frag6_gather elide the CB clear
patch3: fix clobber qdisc_skb_cb in act_ct with defrag

v2: resue some ip_defrag function in patch1

wenxu (3):
  net: ip_fragment: Add ip_defrag_ignore_cb support
  netfilter: nf_conntrack_reasm: make nf_ct_frag6_gather elide the CB
    clear
  net/sched: act_ct: fix clobber qdisc_skb_cb in defrag

 include/linux/netfilter_ipv6.h              |  9 ++---
 include/net/ip.h                            |  2 ++
 include/net/netfilter/ipv6/nf_defrag_ipv6.h |  3 +-
 net/bridge/netfilter/nf_conntrack_bridge.c  |  7 ++--
 net/ipv4/ip_fragment.c                      | 55 ++++++++++++++++++++++++-----
 net/ipv6/netfilter/nf_conntrack_reasm.c     | 19 ++++++----
 net/ipv6/netfilter/nf_defrag_ipv6_hooks.c   |  3 +-
 net/openvswitch/conntrack.c                 |  8 ++---
 net/sched/act_ct.c                          |  8 ++---
 9 files changed, 77 insertions(+), 37 deletions(-)

-- 
1.8.3.1




[Index of Archives]     [Netfitler Users]     [Berkeley Packet Filter]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux