netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 00/13] nfp: XDP adjust head support
@ 2017-03-10 18:38 Jakub Kicinski
  2017-03-10 18:38 ` [PATCH net-next 01/13] nfp: separate data path information from the reset of adapter structure Jakub Kicinski
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: Jakub Kicinski @ 2017-03-10 18:38 UTC (permalink / raw)
  To: netdev; +Cc: oss-drivers, kubakici, Jakub Kicinski

Hi!

This series adds support for XDP adjust head.  Bulk of the code
is actually just paying technical debt.  On reconfiguration request
nfp was allocating new resources separately leaving device running
with the existing set of rings.  We used to manage the new resources
in special ring set structures.  This set is simply separating the
datapath part of the device structure from the control information
allowing the new datapath structure to be allocated with all new
memory and rings.  The swap operation is now greatly simplified.
We also save a lot of parameter passing this way.  Hopefully the churn
is worth the negative diffstat.

Support for XDP adjust head is done in a pretty standard way.  NFP
is a bit special because it prepends metadata before packet data
so we have to do a bit of memcpying in case XDP will run.  We also
luck out a little bit because the fact that we already have prepend
space allocated means that one byte is enough to store the extra XDP
space (256 of standard prepend space is a bit inconvenient since
it would normally require 16bits or boolean with additional shifts).

Jakub Kicinski (13):
  nfp: separate data path information from the reset of adapter
    structure
  nfp: move control BAR pointer into data path structure
  nfp: pass new data path to ring reconfig
  nfp: use dp to carry number of stack tx rings and vectors
  nfp: use dp to carry fl_bufsz at reconfig time
  nfp: use dp to carry mtu at reconfig time
  nfp: use dp to carry xdp_prog at reconfig time
  nfp: switch to using data path structures for reconfiguration
  nfp: store dma direction in data path structure
  nfp: validate rx offset from the BAR and size down it's field
  nfp: reorganize pkt_off variable
  nfp: prepare metadata handling for xdp_adjust_head()
  nfp: add support for xdp_adjust_head()

 drivers/net/ethernet/netronome/nfp/nfp_net.h       | 150 ++--
 .../net/ethernet/netronome/nfp/nfp_net_common.c    | 999 ++++++++++-----------
 .../net/ethernet/netronome/nfp/nfp_net_debugfs.c   |   4 +-
 .../net/ethernet/netronome/nfp/nfp_net_ethtool.c   | 104 +--
 drivers/net/ethernet/netronome/nfp/nfp_net_main.c  |  32 +-
 .../net/ethernet/netronome/nfp/nfp_net_offload.c   |  30 +-
 .../net/ethernet/netronome/nfp/nfp_netvf_main.c    |  19 +-
 7 files changed, 655 insertions(+), 683 deletions(-)

-- 
2.11.0

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2017-03-13  6:43 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-10 18:38 [PATCH net-next 00/13] nfp: XDP adjust head support Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 01/13] nfp: separate data path information from the reset of adapter structure Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 02/13] nfp: move control BAR pointer into data path structure Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 03/13] nfp: pass new data path to ring reconfig Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 04/13] nfp: use dp to carry number of stack tx rings and vectors Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 05/13] nfp: use dp to carry fl_bufsz at reconfig time Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 06/13] nfp: use dp to carry mtu " Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 07/13] nfp: use dp to carry xdp_prog " Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 08/13] nfp: switch to using data path structures for reconfiguration Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 09/13] nfp: store dma direction in data path structure Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 10/13] nfp: validate rx offset from the BAR and size down it's field Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 11/13] nfp: reorganize pkt_off variable Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 12/13] nfp: prepare metadata handling for xdp_adjust_head() Jakub Kicinski
2017-03-10 18:38 ` [PATCH net-next 13/13] nfp: add support " Jakub Kicinski
2017-03-13  6:43 ` [PATCH net-next 00/13] nfp: XDP adjust head support David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).