linux/drivers/net
David S. Miller 0b725a2ca6 net: Remove ndo_xmit_flush netdev operation, use signalling instead.
As reported by Jesper Dangaard Brouer, for high packet rates the
overhead of having another indirect call in the TX path is
non-trivial.

There is the indirect call itself, and then there is all of the
reloading of the state to refetch the tail pointer value and
then write the device register.

Move to a more passive scheme, which requires very light modifications
to the device drivers.

The signal is a new skb->xmit_more value, if it is non-zero it means
that more SKBs are pending to be transmitted on the same queue as the
current SKB.  And therefore, the driver may elide the tail pointer
update.

Right now skb->xmit_more is always zero.

Signed-off-by: David S. Miller <davem@davemloft.net>
2014-08-25 16:29:42 -07:00
..
appletalk
arcnet PCI changes for the v3.17 merge window (part 2): 2014-08-14 18:10:33 -06:00
bonding bonding: create netlink event when bonding option is changed 2014-08-22 12:33:47 -07:00
caif net: set name_assign_type in alloc_netdev() 2014-07-15 16:12:48 -07:00
can Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-08-23 11:12:08 -07:00
cris eth_v10: remove unnecessary break after return 2014-07-20 21:29:49 -07:00
dsa
ethernet net: Remove ndo_xmit_flush netdev operation, use signalling instead. 2014-08-25 16:29:42 -07:00
fddi PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
hamradio net: set name_assign_type in alloc_netdev() 2014-07-15 16:12:48 -07:00
hippi PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
hyperv hyperv: Increase the buffer length for netvsc_channel_cb() 2014-08-22 12:23:09 -07:00
ieee802154 net: set name_assign_type in alloc_netdev() 2014-07-15 16:12:48 -07:00
irda PCI changes for the v3.17 merge window (part 2): 2014-08-14 18:10:33 -06:00
phy net: phy: bcm7xxx: enable EEE at the PHY level 2014-08-23 11:39:09 -07:00
plip
ppp net: filter: split 'struct sk_filter' into socket and bpf parts 2014-08-02 15:03:58 -07:00
slip net: set name_assign_type in alloc_netdev() 2014-07-15 16:12:48 -07:00
team team: Simplify return path of team_newlink 2014-08-05 16:37:51 -07:00
usb r8152: check code with checkpatch.pl 2014-08-25 12:58:32 -07:00
vmxnet3 PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
wan net: Add ops->ndo_xmit_flush() 2014-08-24 23:02:45 -07:00
wimax net: set name_assign_type in alloc_netdev() 2014-07-15 16:12:48 -07:00
wireless PCI changes for the v3.17 merge window (part 2): 2014-08-14 18:10:33 -06:00
xen-netback xen-netback: remove loop waiting function 2014-08-13 20:07:44 -07:00
dummy.c net: set name_assign_type in alloc_netdev() 2014-07-15 16:12:48 -07:00
eql.c net: set name_assign_type in alloc_netdev() 2014-07-15 16:12:48 -07:00
ifb.c net: set name_assign_type in alloc_netdev() 2014-07-15 16:12:48 -07:00
Kconfig vxlan: Call udp_sock_create 2014-07-14 16:12:15 -07:00
LICENSE.SRC
loopback.c net: set name_assign_type in alloc_netdev() 2014-07-15 16:12:48 -07:00
macvlan.c macvlan: Allow setting multicast filter on all macvlan types 2014-08-21 16:54:25 -07:00
macvtap.c
Makefile net: reduce USB network driver config options. 2014-08-05 16:48:59 -07:00
mdio.c
mii.c
netconsole.c
nlmon.c
ntb_netdev.c net: use ethtool_cmd_speed_set helper to set ethtool speed value 2014-06-06 16:24:07 -07:00
rionet.c
sb1000.c
Space.c
sungem_phy.c
tun.c net: set name_assign_type in alloc_netdev() 2014-07-15 16:12:48 -07:00
veth.c net: rtnetlink - make create_link take name_assign_type 2014-07-15 16:13:07 -07:00
virtio_net.c net: Remove ndo_xmit_flush netdev operation, use signalling instead. 2014-08-25 16:29:42 -07:00
vxlan.c vxlan: fix incorrect initializer in union vxlan_addr 2014-08-22 19:54:56 -07:00
xen-netfront.c xen-netfront: Fix handling packets on compound pages with skb_linearize 2014-08-11 14:46:41 -07:00