[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180524022255.18548-1-jakub.kicinski@netronome.com>
Date: Wed, 23 May 2018 19:22:47 -0700
From: Jakub Kicinski <jakub.kicinski@...ronome.com>
To: davem@...emloft.net
Cc: netdev@...r.kernel.org, oss-drivers@...ronome.com,
Jakub Kicinski <jakub.kicinski@...ronome.com>,
Jiri Pirko <jiri@...nulli.us>,
Jay Vosburgh <j.vosburgh@...il.com>,
Veaceslav Falico <vfalico@...il.com>,
Andy Gospodarek <andy@...yhouse.net>
Subject: [PATCH net-next 0/8] nfp: offload LAG for tc flower egress
Hi!
This series from John adds bond offload to the nfp driver. Patch 5
exposes the hash type for NETDEV_LAG_TX_TYPE_HASH to make sure nfp
hashing matches that of the software LAG. This may be unnecessarily
conservative, let's see what LAG maintainers think :)
John says:
This patchset sets up the infrastructure and offloads output actions for
when a TC flower rule attempts to egress a packet to a LAG port.
Firstly it adds some of the infrastructure required to the flower app and
to the nfp core. This includes the ability to change the MAC address of a
repr, a function for combining lookup and write to a FW symbol, and the
addition of private data to a repr on a per app basis.
Patch 6 continues by implementing notifiers that track Linux bonds and
communicates to the FW those which enslave reprs, along with the current
state of reprs within the bond.
Patch 7 ensures bonds are synchronised with FW by receiving and acting
upon cmsgs sent to the kernel. These may request that a bond message is
retransmitted when FW can process it, or may request a full sync of the
bonds defined in the kernel.
Patch 8 offloads a flower action when that action requires egressing to a
pre-defined Linux bond.
John Hurley (8):
nfp: add ndo_set_mac_address for representors
nfp: nfpcore: add rtsym writing function
nfp: flower: check for/turn on LAG support in firmware
nfp: flower: add per repr private data for LAG offload
net: include hash policy in LAG changeupper info
nfp: flower: monitor and offload LAG groups
nfp: flower: implement host cmsg handler for LAG
nfp: flower: compute link aggregation action
drivers/net/bonding/bond_main.c | 27 +-
drivers/net/ethernet/netronome/nfp/Makefile | 1 +
.../ethernet/netronome/nfp/flower/action.c | 131 +++-
.../net/ethernet/netronome/nfp/flower/cmsg.c | 11 +-
.../net/ethernet/netronome/nfp/flower/cmsg.h | 14 +
.../ethernet/netronome/nfp/flower/lag_conf.c | 726 ++++++++++++++++++
.../net/ethernet/netronome/nfp/flower/main.c | 61 ++
.../net/ethernet/netronome/nfp/flower/main.h | 52 +-
.../ethernet/netronome/nfp/flower/offload.c | 2 +-
.../net/ethernet/netronome/nfp/nfp_net_repr.c | 1 +
.../ethernet/netronome/nfp/nfpcore/nfp_nffw.h | 2 +
.../netronome/nfp/nfpcore/nfp_rtsym.c | 43 ++
drivers/net/team/team.c | 1 +
include/linux/netdevice.h | 11 +
14 files changed, 1053 insertions(+), 30 deletions(-)
create mode 100644 drivers/net/ethernet/netronome/nfp/flower/lag_conf.c
---
CC: Jiri Pirko <jiri@...nulli.us>
CC: Jay Vosburgh <j.vosburgh@...il.com>
CC: Veaceslav Falico <vfalico@...il.com>
CC: Andy Gospodarek <andy@...yhouse.net>
--
2.17.0
Powered by blists - more mailing lists