Re: [PATCH v6 net-next 00/12] allow user to offload tc action to net device
From: Simon Horman <hidden>
Date: 2021-12-09 10:42:05
On Thu, Dec 09, 2021 at 10:27:54AM +0100, Simon Horman wrote:
Baowen Zheng says:
... Sorry, I appear to have included two sets of slightly different information in this cover letter. Please ignore the following two paragraphs, and instead refer to the two after that. Ignore this:
Baowen Zheng (12):
flow_offload: fill flags to action structure
flow_offload: reject to offload tc actions in offload drivers
flow_offload: add index to flow_action_entry structure
flow_offload: return EOPNOTSUPP for the unsupported mpls action type
flow_offload: add ops to tc_action_ops for flow action setup
flow_offload: allow user to offload tc action to net device
flow_offload: add skip_hw and skip_sw to control if offload the action
flow_offload: add process to update action stats from hardware
net: sched: save full flags for tc action
flow_offload: add reoffload process to update hw_count
flow_offload: validate flags of filter and actions
selftests: tc-testing: add action offload selftest for action and
filter
drivers/net/dsa/ocelot/felix_vsc9959.c | 4 +-
drivers/net/dsa/sja1105/sja1105_flower.c | 2 +-
drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c | 2 +-
.../net/ethernet/freescale/enetc/enetc_qos.c | 6 +-
.../ethernet/mellanox/mlx5/core/en/rep/tc.c | 3 +
.../ethernet/mellanox/mlxsw/spectrum_flower.c | 2 +-
drivers/net/ethernet/mscc/ocelot_flower.c | 2 +-
.../ethernet/netronome/nfp/flower/offload.c | 3 +
include/linux/netdevice.h | 1 +
include/net/act_api.h | 27 +-
include/net/flow_offload.h | 20 +-
include/net/pkt_cls.h | 27 +-
include/net/tc_act/tc_gate.h | 5 -
include/uapi/linux/pkt_cls.h | 9 +-
net/core/flow_offload.c | 46 +-
net/sched/act_api.c | 450 +++++++++++++++++-
net/sched/act_bpf.c | 2 +-
net/sched/act_connmark.c | 2 +-
net/sched/act_csum.c | 19 +
net/sched/act_ct.c | 21 +
net/sched/act_ctinfo.c | 2 +-
net/sched/act_gact.c | 38 ++
net/sched/act_gate.c | 51 +-
net/sched/act_ife.c | 2 +-
net/sched/act_ipt.c | 2 +-
net/sched/act_mirred.c | 50 ++
net/sched/act_mpls.c | 54 ++-
net/sched/act_nat.c | 2 +-
net/sched/act_pedit.c | 36 +-
net/sched/act_police.c | 27 +-
net/sched/act_sample.c | 32 +-
net/sched/act_simple.c | 2 +-
net/sched/act_skbedit.c | 38 +-
net/sched/act_skbmod.c | 2 +-
net/sched/act_tunnel_key.c | 54 +++
net/sched/act_vlan.c | 48 ++
net/sched/cls_api.c | 263 ++--------
net/sched/cls_flower.c | 9 +-
net/sched/cls_matchall.c | 9 +-
net/sched/cls_u32.c | 12 +-
.../tc-testing/tc-tests/actions/police.json | 24 +
.../tc-testing/tc-tests/filters/matchall.json | 24 +
42 files changed, 1144 insertions(+), 290 deletions(-)Instead, refer to this:
Baowen Zheng (12):
flow_offload: fill flags to action structure
flow_offload: reject to offload tc actions in offload drivers
flow_offload: add index to flow_action_entry structure
flow_offload: return EOPNOTSUPP for the unsupported mpls action type
flow_offload: add ops to tc_action_ops for flow action setup
flow_offload: allow user to offload tc action to net device
flow_offload: add skip_hw and skip_sw to control if offload the action
flow_offload: add process to update action stats from hardware
net: sched: save full flags for tc action
flow_offload: add reoffload process to update hw_count
flow_offload: validate flags of filter and actions
selftests: tc-testing: add action offload selftest for action and
filter
drivers/net/dsa/ocelot/felix_vsc9959.c | 4 +-
drivers/net/dsa/sja1105/sja1105_flower.c | 2 +-
drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c | 2 +-
.../net/ethernet/freescale/enetc/enetc_qos.c | 6 +-
.../ethernet/mellanox/mlx5/core/en/rep/tc.c | 3 +
.../ethernet/mellanox/mlxsw/spectrum_flower.c | 2 +-
drivers/net/ethernet/mscc/ocelot_flower.c | 2 +-
.../ethernet/netronome/nfp/flower/offload.c | 3 +
include/linux/netdevice.h | 1 +
include/net/act_api.h | 27 +-
include/net/flow_offload.h | 20 +-
include/net/pkt_cls.h | 27 +-
include/net/tc_act/tc_gate.h | 5 -
include/uapi/linux/pkt_cls.h | 9 +-
net/core/flow_offload.c | 46 +-
net/sched/act_api.c | 451 +++++++++++++++++-
net/sched/act_bpf.c | 2 +-
net/sched/act_connmark.c | 2 +-
net/sched/act_csum.c | 19 +
net/sched/act_ct.c | 21 +
net/sched/act_ctinfo.c | 2 +-
net/sched/act_gact.c | 38 ++
net/sched/act_gate.c | 51 +-
net/sched/act_ife.c | 2 +-
net/sched/act_ipt.c | 2 +-
net/sched/act_mirred.c | 50 ++
net/sched/act_mpls.c | 54 ++-
net/sched/act_nat.c | 2 +-
net/sched/act_pedit.c | 36 +-
net/sched/act_police.c | 27 +-
net/sched/act_sample.c | 32 +-
net/sched/act_simple.c | 2 +-
net/sched/act_skbedit.c | 38 +-
net/sched/act_skbmod.c | 2 +-
net/sched/act_tunnel_key.c | 54 +++
net/sched/act_vlan.c | 48 ++
net/sched/cls_api.c | 263 ++--------
net/sched/cls_flower.c | 9 +-
net/sched/cls_matchall.c | 9 +-
net/sched/cls_u32.c | 12 +-
.../tc-testing/tc-tests/actions/police.json | 24 +
.../tc-testing/tc-tests/filters/matchall.json | 24 +
42 files changed, 1145 insertions(+), 290 deletions(-)