Merge branch 'nfp-ring-reconfig-and-xdp-support'
authorDavid S. Miller <davem@davemloft.net>
Fri, 4 Nov 2016 18:56:17 +0000 (14:56 -0400)
committerDavid S. Miller <davem@davemloft.net>
Fri, 4 Nov 2016 18:56:17 +0000 (14:56 -0400)
commit95ae31a9a95c1c27f4a260152e7b42e2254f26b5
tree155d90ba06bfdd3db20304dbe1955f32b4de9cab
parent013724e9a2d748fecc8e45b8329a2b8a78c4a650
parent6d6770755f053e0ab2f7c3ffcfeaaf8dbbe89092
Merge branch 'nfp-ring-reconfig-and-xdp-support'

Jakub Kicinski says:

====================
ring reconfiguration and XDP support

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.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>