Skip to content

Commit

Permalink
Merge branch 'act_ct-Software-offload-of-conntrack_in'
Browse files Browse the repository at this point in the history
Paul Blakey says:

====================
act_ct: Software offload of conntrack_in

This series adds software offload of connections with an established
ct state using the NF flow table offload infrastructure, so
once such flows are offloaded, they will not pass through conntrack
again, and instead act_ct will restore the conntrack info metadata
on the skb to the state it had on the offload event - established.

Act_ct maintains an FT instance per ct zone. Flow table entries
are created, per ct connection, when connections enter an established
state and deleted otherwise. Once an entry is created, the FT assumes
ownership of the entry, and manages it's aging.

On the datapath, first lookup the skb in the zone's FT before going
into conntrack, and if a matching flow is found, restore the conntrack
info metadata on the skb, and skip calling conntrack.

Note that this patchset is part of the connection tracking offload feature.
Hardware offload of connections with an established ct state series will follow
this one.

Changelog:
   v1->v2:
     Removed now unused netfilter patches
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
David S. Miller committed Mar 3, 2020
2 parents a7442ec + 46475bb commit 630fe59
Show file tree
Hide file tree
Showing 3 changed files with 355 additions and 2 deletions.
2 changes: 2 additions & 0 deletions include/net/tc_act/tc_ct.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ struct tcf_ct_params {
u16 ct_action;

struct rcu_head rcu;

struct tcf_ct_flow_table *ct_ft;
};

struct tcf_ct {
Expand Down
2 changes: 1 addition & 1 deletion net/sched/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -972,7 +972,7 @@ config NET_ACT_TUNNEL_KEY

config NET_ACT_CT
tristate "connection tracking tc action"
depends on NET_CLS_ACT && NF_CONNTRACK && NF_NAT
depends on NET_CLS_ACT && NF_CONNTRACK && NF_NAT && NF_FLOW_TABLE
help
Say Y here to allow sending the packets to conntrack module.

Expand Down
Loading

0 comments on commit 630fe59

Please sign in to comment.