linux/drivers/net
Brenden Blanco 9ecc2d8617 net/mlx4_en: add xdp forwarding and data write support
A user will now be able to loop packets back out of the same port using
a bpf program attached to xdp hook. Updates to the packet contents from
the bpf program is also supported.

For the packet write feature to work, the rx buffers are now mapped as
bidirectional when the page is allocated. This occurs only when the xdp
hook is active.

When the program returns a TX action, enqueue the packet directly to a
dedicated tx ring, so as to avoid completely any locking. This requires
the tx ring to be allocated 1:1 for each rx ring, as well as the tx
completion running in the same softirq.

Upon tx completion, this dedicated tx ring recycles pages without
unmapping directly back to the original rx ring. In steady state tx/drop
workload, effectively 0 page allocs/frees will occur.

In order to separate out the paths between free and recycle, a
free_tx_desc func pointer is introduced that is optionally updated
whenever recycle_ring is activated. By default the original free
function is always initialized.

Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-07-19 21:46:33 -07:00
..
appletalk
arcnet
bonding Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-07-06 10:35:22 -07:00
caif
can Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-06-30 05:03:36 -04:00
cris
dsa net: dsa: mv88e6xxx: add support for DSA ageing time 2016-07-19 19:42:02 -07:00
ethernet net/mlx4_en: add xdp forwarding and data write support 2016-07-19 21:46:33 -07:00
fddi net: skfb: remove obsolete -I cflag 2016-06-15 22:06:06 -07:00
fjes net: fjes: fjes_main: Remove create_workqueue 2016-06-03 19:29:42 -04:00
hamradio hamradio: baycom: fix old-style declaration 2016-06-16 22:06:30 -07:00
hippi
hyperv netvsc: Use the new in-place consumption APIs in the rx path 2016-07-08 23:11:20 -04:00
ieee802154 mrf24j40: avoid uninitialized byte in SPI transfer to radio. 2016-07-12 11:54:53 +02:00
ipvlan net: ipvlan: call netdev_lockdep_set_classes() 2016-06-09 13:28:37 -07:00
irda net: irda: avoid null pointer dereference 2016-05-19 11:30:57 -07:00
phy Marvell phy: add functions to suspend and resume both interfaces: fiber and copper links. 2016-07-19 16:05:56 -07:00
plip
ppp net: add netdev_lockdep_set_classes() helper 2016-06-09 13:28:37 -07:00
slip
team net: introduce default neigh_construct/destroy ndo calls for L2 upper devices 2016-07-05 09:06:28 -07:00
usb net: usb: ax88172x: use phy_ethtool_{get|set}_link_ksettings 2016-07-16 21:54:40 -07:00
vmxnet3 vmxnet3: update to version 3 2016-06-16 22:37:05 -07:00
wan wan/fsl_ucc_hdlc: rewrite error handling to make it clearer 2016-07-16 20:22:02 -07:00
wimax
wireless wireless-drivers-next patches for 4.8 2016-07-14 16:32:27 -07:00
xen-netback xen-netback: only deinitialized hash if it was initialized 2016-05-20 17:41:18 -04:00
dummy.c
eql.c
geneve.c drivers/net: fixup comments after "Future-proof tunnel offload handlers" 2016-07-11 13:42:11 -07:00
gtp.c gtp: remove unused including <linux/version.h> 2016-06-17 22:28:49 -07:00
ifb.c
Kconfig gtp: add initial driver for datapath of GPRS Tunneling Protocol (GTP-U) 2016-05-10 12:25:04 -04:00
LICENSE.SRC
loopback.c loopback: make use of NETIF_F_GSO_SOFTWARE 2016-06-03 19:37:21 -04:00
macsec.c macsec: set actual real device for xmit when !protect_frames 2016-07-01 16:35:56 -04:00
macvlan.c net: macvlan: call netdev_lockdep_set_classes() 2016-06-09 13:28:37 -07:00
macvtap.c macvtap: correctly free skb during socket destruction 2016-07-18 22:11:22 -07:00
Makefile gtp: add initial driver for datapath of GPRS Tunneling Protocol (GTP-U) 2016-05-10 12:25:04 -04:00
mdio.c
mii.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c net: Fix coding style warnings and errors. 2016-05-19 11:48:27 -07:00
sungem_phy.c
tun.c tun: Don't assume type tun in tun_device_event 2016-07-08 23:58:57 -04:00
veth.c
virtio_net.c virtio-net: Remove more stack DMA 2016-07-19 19:25:43 -07:00
vrf.c net: vrf: Add support for PREROUTING rules on vrf device 2016-07-05 11:50:05 -07:00
vxlan.c drivers/net: fixup comments after "Future-proof tunnel offload handlers" 2016-07-11 13:42:11 -07:00
xen-netfront.c