[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190504114628.14755-1-jakub.kicinski@netronome.com>
Date: Sat, 4 May 2019 04:46:15 -0700
From: Jakub Kicinski <jakub.kicinski@...ronome.com>
To: davem@...emloft.net
Cc: netdev@...r.kernel.org, oss-drivers@...ronome.com,
jiri@...nulli.us, xiyou.wangcong@...il.com, idosch@...lanox.com,
f.fainelli@...il.com, andrew@...n.ch, vivien.didelot@...il.com,
gerlitz.or@...il.com, simon.horman@...ronome.com,
Jakub Kicinski <jakub.kicinski@...ronome.com>
Subject: [PATCH net-next 00/13] net: act_police offload support
Hi,
this set starts by converting cls_matchall to the new flow offload
infrastructure. It so happens that all drivers implementing cls_matchall
offload today also offload cls_flower, so its a little easier for
them to handle the actions in unified flow_rule format, even though
in cls_matchall there is no flow to speak of. If a driver ever appears
which would prefer the old, direct access to TC exts, we can add the
pointer in the offload structure back and support both.
Next the act_police is added to actions supported by flow offload API.
NFP support for act_police offload is added as the final step. The flower
firmware is configured to perform TX rate limiting in a way which matches
act_police's behaviour. It does not use DMA.IN back pressure, and
instead drops packets after they had been already DMAed into the NIC.
IOW it uses our standard traffic policing implementation, future patches
will extend it to other ports and traffic directions.
Pieter Jansen van Vuuren (13):
net/sched: add sample action to the hardware intermediate
representation
net/sched: use the hardware intermediate representation for matchall
mlxsw: use intermediate representation for matchall offload
net/dsa: use intermediate representation for matchall offload
net/sched: remove unused functions for matchall offload
net/sched: move police action structures to header
net/sched: add police action to the hardware intermediate
representation
net/sched: extend matchall offload for hardware statistics
net/sched: allow stats updates from offloaded police actions
net/sched: add block pointer to tc_cls_common_offload structure
nfp: flower: add qos offload framework
nfp: flower: add qos offload install and remove functionality.
nfp: flower: add qos offload stats request and reply
.../net/ethernet/mellanox/mlxsw/spectrum.c | 38 +-
drivers/net/ethernet/netronome/nfp/Makefile | 3 +-
.../net/ethernet/netronome/nfp/flower/cmsg.c | 3 +
.../net/ethernet/netronome/nfp/flower/cmsg.h | 3 +
.../net/ethernet/netronome/nfp/flower/main.c | 6 +
.../net/ethernet/netronome/nfp/flower/main.h | 29 ++
.../ethernet/netronome/nfp/flower/offload.c | 3 +
.../ethernet/netronome/nfp/flower/qos_conf.c | 366 ++++++++++++++++++
include/net/flow_offload.h | 23 ++
include/net/pkt_cls.h | 36 +-
include/net/tc_act/tc_police.h | 70 ++++
net/dsa/slave.c | 16 +-
net/sched/act_police.c | 52 +--
net/sched/cls_api.c | 14 +
net/sched/cls_bpf.c | 7 +-
net/sched/cls_flower.c | 11 +-
net/sched/cls_matchall.c | 65 +++-
net/sched/cls_u32.c | 17 +-
18 files changed, 654 insertions(+), 108 deletions(-)
create mode 100644 drivers/net/ethernet/netronome/nfp/flower/qos_conf.c
create mode 100644 include/net/tc_act/tc_police.h
--
2.21.0
Powered by blists - more mailing lists