netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next resend 00/13] ring reconfiguration and XDP support
@ 2016-11-03 17:11 Jakub Kicinski
  2016-11-03 17:11 ` [PATCH net-next resend 01/13] nfp: add support for ethtool .get_channels Jakub Kicinski
                   ` (13 more replies)
  0 siblings, 14 replies; 17+ messages in thread
From: Jakub Kicinski @ 2016-11-03 17:11 UTC (permalink / raw)
  To: netdev; +Cc: Jakub Kicinski

Hi!

This set adds support for ethtool channel API and XDP.

I kick off with ethtool get_channels() implementation.  
set_channels() needs some preparations to get right.  I follow
the prepare/commit paradigm and allocate all resources before
stopping the device.  It has already been done for ndo_change_mtu
and ethtool set_ringparam(), it makes sense now to consolidate all
the required logic in one place.

XDP support requires splitting TX rings into two classes - 
for the stack and for XDP.  The ring structures are identical.
The differences are in how they are connected to IRQ vector
structs and how the completion/cleanup works.  When XDP is enabled
I switch from the frag allocator to page-per-packet and map buffers
BIDIRECTIONALly.

Last but not least XDP offload is added (the patch just takes
care of the small formal differences between cls_bpf and XDP).

There is a tiny & trivial DebugFS patch in the mix, I hope it can
be taken via net-next provided we have the right Acks.

Resending with improved commit message and CCing more people on patch 10.

Jakub Kicinski (13):
  nfp: add support for ethtool .get_channels
  nfp: centralize runtime reconfiguration logic
  nfp: rename ring allocation helpers
  nfp: reuse ring helpers on .ndo_open() path
  nfp: loosen relation between rings and IRQs vectors
  nfp: add helper to reassign rings to IRQ vectors
  nfp: move RSS indirection table init into a separate function
  nfp: add support for ethtool .set_channels
  nfp: reorganize nfp_net_rx() to get packet offsets early
  debugfs: constify argument to debugfs_real_fops()
  nfp: add XDP support in the driver
  nfp: remove unnecessary parameters from nfp_net_bpf_offload()
  nfp: add support for offload of XDP programs

 drivers/net/ethernet/netronome/nfp/nfp_bpf.h       |   1 +
 drivers/net/ethernet/netronome/nfp/nfp_bpf_jit.c   |  92 ++-
 .../net/ethernet/netronome/nfp/nfp_bpf_verifier.c  |   3 +
 drivers/net/ethernet/netronome/nfp/nfp_net.h       |  30 +-
 .../net/ethernet/netronome/nfp/nfp_net_common.c    | 892 ++++++++++++++-------
 .../net/ethernet/netronome/nfp/nfp_net_debugfs.c   |  41 +-
 .../net/ethernet/netronome/nfp/nfp_net_ethtool.c   |  94 +++
 .../net/ethernet/netronome/nfp/nfp_net_offload.c   |   7 +-
 include/linux/debugfs.h                            |   3 +-
 9 files changed, 869 insertions(+), 294 deletions(-)

-- 
1.9.1

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

end of thread, other threads:[~2016-11-10 15:43 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-03 17:11 [PATCH net-next resend 00/13] ring reconfiguration and XDP support Jakub Kicinski
2016-11-03 17:11 ` [PATCH net-next resend 01/13] nfp: add support for ethtool .get_channels Jakub Kicinski
2016-11-03 17:11 ` [PATCH net-next resend 02/13] nfp: centralize runtime reconfiguration logic Jakub Kicinski
2016-11-03 17:11 ` [PATCH net-next resend 03/13] nfp: rename ring allocation helpers Jakub Kicinski
2016-11-03 17:12 ` [PATCH net-next resend 04/13] nfp: reuse ring helpers on .ndo_open() path Jakub Kicinski
2016-11-03 17:12 ` [PATCH net-next resend 05/13] nfp: loosen relation between rings and IRQs vectors Jakub Kicinski
2016-11-03 17:12 ` [PATCH net-next resend 06/13] nfp: add helper to reassign rings to IRQ vectors Jakub Kicinski
2016-11-03 17:12 ` [PATCH net-next resend 07/13] nfp: move RSS indirection table init into a separate function Jakub Kicinski
2016-11-03 17:12 ` [PATCH net-next resend 08/13] nfp: add support for ethtool .set_channels Jakub Kicinski
2016-11-03 17:12 ` [PATCH net-next resend 09/13] nfp: reorganize nfp_net_rx() to get packet offsets early Jakub Kicinski
2016-11-03 17:12 ` [PATCH net-next resend 10/13] debugfs: constify argument to debugfs_real_fops() Jakub Kicinski
2016-11-10 14:25   ` Greg Kroah-Hartman
2016-11-10 15:42     ` Jakub Kicinski
2016-11-03 17:12 ` [PATCH net-next resend 11/13] nfp: add XDP support in the driver Jakub Kicinski
2016-11-03 17:12 ` [PATCH net-next resend 12/13] nfp: remove unnecessary parameters from nfp_net_bpf_offload() Jakub Kicinski
2016-11-03 17:12 ` [PATCH net-next resend 13/13] nfp: add support for offload of XDP programs Jakub Kicinski
2016-11-04 18:56 ` [PATCH net-next resend 00/13] ring reconfiguration and XDP 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).