[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20181206224002.5109-1-pablo@netfilter.org>
Date: Thu, 6 Dec 2018 23:39:50 +0100
From: Pablo Neira Ayuso <pablo@...filter.org>
To: netdev@...r.kernel.org
Cc: davem@...emloft.net, thomas.lendacky@....com, f.fainelli@...il.com,
ariel.elior@...ium.com, michael.chan@...adcom.com,
santosh@...lsio.com, madalin.bucur@....com,
yisen.zhuang@...wei.com, salil.mehta@...wei.com,
jeffrey.t.kirsher@...el.com, tariqt@...lanox.com,
saeedm@...lanox.com, jiri@...lanox.com, idosch@...lanox.com,
jakub.kicinski@...ronome.com, peppe.cavallaro@...com,
grygorii.strashko@...com, andrew@...n.ch,
vivien.didelot@...oirfairelinux.com, alexandre.torgue@...com,
joabreu@...opsys.com, linux-net-drivers@...arflare.com,
ganeshgr@...lsio.com, ogerlitz@...lanox.com,
Manish.Chopra@...ium.com, marcelo.leitner@...il.com,
mkubecek@...e.cz, venkatkumar.duvvuru@...adcom.com,
julia.lawall@...6.fr, john.fastabend@...il.com
Subject: [PATCH net-next,v5 00/12] add flow_rule infrastructure
Hi,
This is another iteration of the in-kernel intermediate representation
(IR) that allows to express ACL hardware offloads using one unified
representation from the driver side for the ethtool and the tc
frontends [1] [2] [3].
In words of Michal Kubecek:
"... the ethtool interface can apply four types of action to matching
packets:
- put into a specific queue
- discard
- distribute accross the queues according to a RSS context
- use the rule as a wake-on-lan filter"
This new round now supports for these four types, that can be mapped to
the flow_rule representation.
Changes from previous version:
* Michal Kubecek:
- Add support for FLOW_RSS flag to the ethtool_rx_flow_spec
to flow_rule translator.
* Venkat Duvvuru:
- Fix accidental swapping of flow_stats_update() bytes and
packets parameter.
* kbuild robot:
- Fix double kfree in error path from cls_flower, via Julian Lawal.
- Fix enum type mismatch in nfp driver reported by sparse
checks.
Please apply, thanks.
Pablo Neira Ayuso (12):
flow_offload: add flow_rule and flow_match structures and use them
net/mlx5e: support for two independent packet edit actions
flow_offload: add flow action infrastructure
cls_api: add translator to flow_action representation
flow_offload: add statistics retrieval infrastructure and use it
drivers: net: use flow action infrastructure
cls_flower: don't expose TC actions to drivers anymore
flow_offload: add wake-up-on-lan and queue to flow_action
ethtool: add ethtool_rx_flow_spec to flow_rule structure translator
dsa: bcm_sf2: use flow_rule infrastructure
qede: place ethtool_rx_flow_spec after code after TC flower codebase
qede: use ethtool_rx_flow_rule() to remove duplicated parser code
drivers/net/dsa/bcm_sf2_cfp.c | 102 ++-
drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c | 252 +++----
.../net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c | 450 ++++++-------
drivers/net/ethernet/intel/i40e/i40e_main.c | 178 ++---
drivers/net/ethernet/intel/iavf/iavf_main.c | 195 +++---
drivers/net/ethernet/intel/igb/igb_main.c | 64 +-
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c | 743 ++++++++++-----------
drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c | 2 +-
.../net/ethernet/mellanox/mlxsw/spectrum_flower.c | 258 ++++---
drivers/net/ethernet/netronome/nfp/flower/action.c | 198 +++---
drivers/net/ethernet/netronome/nfp/flower/match.c | 417 ++++++------
.../net/ethernet/netronome/nfp/flower/offload.c | 150 ++---
drivers/net/ethernet/qlogic/qede/qede_filter.c | 572 ++++++----------
include/linux/ethtool.h | 15 +
include/net/flow_offload.h | 202 ++++++
include/net/pkt_cls.h | 18 +-
net/core/Makefile | 2 +-
net/core/ethtool.c | 240 +++++++
net/core/flow_offload.c | 153 +++++
net/sched/cls_api.c | 116 ++++
net/sched/cls_flower.c | 71 +-
21 files changed, 2403 insertions(+), 1995 deletions(-)
create mode 100644 include/net/flow_offload.h
create mode 100644 net/core/flow_offload.c
--
2.11.0
Powered by blists - more mailing lists