[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230314063610.10544-1-louis.peens@corigine.com>
Date: Tue, 14 Mar 2023 08:36:04 +0200
From: Louis Peens <louis.peens@...igine.com>
To: David Miller <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>
Cc: Simon Horman <simon.horman@...igine.com>, netdev@...r.kernel.org,
oss-drivers@...igine.com
Subject: [PATCH net-next 0/6] nfp: flower: add support for multi-zone conntrack
This series add changes to support offload of connection tracking across
multiple zones. Previously the driver only supported offloading of a
single goto_chain, spanning a single zone. This was implemented by
merging a pre_ct rule, post_ct rule and the nft rule. This series
provides updates to let the original post_ct rule act as the new pre_ct
rule for a next set of merges if it contains another goto and
conntrack action. In pseudo-tc rule format this adds support for:
ingress chain 0 proto ip flower
action ct zone 1 pipe action goto 1
ingress chain 1 proto ip flower ct_state +tr+new ct_zone 1
action ct_clear pipe action ct zone 2 pipe action goto 2
ingress chain 1 proto ip flower ct_state +tr+est ct_zone 1
action ct_clear pipe action ct zone 2 pipe action goto 2
ingress chain 2 proto ip flower ct_state +tr+new ct_zone 2
action mirred egress redirect dev ...
ingress chain 2 proto ip flower ct_state +tr+est ct_zone 2
action mirred egress redirect dev ...
This can continue for up to a maximum of 4 zone recirculations.
The first few patches are some smaller preparation patches while the
last one introduces the functionality.
Wentao Jia (6):
nfp: flower: add get_flow_act_ct() for ct action
nfp: flower: refactor function "is_pre_ct_flow"
nfp: flower: refactor function "is_post_ct_flow"
nfp: flower: add goto_chain_index for ct entry
nfp: flower: prepare for parameterisation of number of offload rules
nfp: flower: offload tc flows of multiple conntrack zones
.../ethernet/netronome/nfp/flower/conntrack.c | 260 ++++++++++++++----
.../ethernet/netronome/nfp/flower/conntrack.h | 32 ++-
.../ethernet/netronome/nfp/flower/offload.c | 2 +-
3 files changed, 230 insertions(+), 64 deletions(-)
--
2.34.1
Powered by blists - more mailing lists