linux/net
David S. Miller fd2ea0a79f net: Use queue aware tests throughout.
This effectively "flips the switch" by making the core networking
and multiqueue-aware drivers use the new TX multiqueue structures.

Non-multiqueue drivers need no changes.  The interfaces they use such
as netif_stop_queue() degenerate into an operation on TX queue zero.
So everything "just works" for them.

Code that really wants to do "X" to all TX queues now invokes a
routine that does so, such as netif_tx_wake_all_queues(),
netif_tx_stop_all_queues(), etc.

pktgen and netpoll required a little bit more surgery than the others.

In particular the pktgen changes, whilst functional, could be largely
improved.  The initial check in pktgen_xmit() will sometimes check the
wrong queue, which is mostly harmless.  The thing to do is probably to
invoke fill_packet() earlier.

The bulk of the netpoll changes is to make the code operate solely on
the TX queue indicated by by the SKB queue mapping.

Setting of the SKB queue mapping is entirely confined inside of
net/core/dev.c:dev_pick_tx().  If we end up needing any kind of
special semantics (drops, for example) it will be implemented here.

Finally, we now have a "real_num_tx_queues" which is where the driver
indicates how many TX queues are actually active.

With IGB changes from Jeff Kirsher.

Signed-off-by: David S. Miller <davem@davemloft.net>
2008-07-17 19:21:07 -07:00
..
9p 9p: fix error path during early mount 2008-05-14 19:23:27 -05:00
802 garp: retry sending JoinIn messages after allocation failures 2008-07-16 20:51:47 -07:00
8021q netdev: Allocate multiple queues for TX. 2008-07-17 19:21:00 -07:00
appletalk [NET] NETNS: Omit net_device->nd_net without CONFIG_NET_NS. 2008-03-26 04:39:53 +09:00
atm atm: use const where reasonable 2008-06-17 16:20:06 -07:00
ax25 ax25: Fix std timer socket destroy handling. 2008-06-17 21:26:37 -07:00
bluetooth net: remove CVS keywords 2008-06-11 21:00:38 -07:00
bridge bridge: Check return of dev_set_promiscuity 2008-07-14 20:53:13 -07:00
can can: add sanity checks 2008-07-05 23:38:43 -07:00
core net: Use queue aware tests throughout. 2008-07-17 19:21:07 -07:00
dccp mib: add net to NET_INC_STATS_BH 2008-07-16 20:31:16 -07:00
decnet sock: add net to prot->enter_memory_pressure callback 2008-07-16 20:28:10 -07:00
econet econet: Use sock_orphan() instead of open-coded (and buggy) variant. 2008-06-17 03:01:47 -07:00
ethernet [NET]: Return more appropriate error from eth_validate_addr(). 2008-04-13 22:45:40 -07:00
ieee80211 wext: Emit event stream entries correctly when compat. 2008-06-16 18:50:49 -07:00
ipv4 mib: add net to NET_ADD_STATS_USER 2008-07-16 20:32:45 -07:00
ipv6 mib: add net to NET_INC_STATS_BH 2008-07-16 20:31:16 -07:00
ipx [NET] NETNS: Omit net_device->nd_net without CONFIG_NET_NS. 2008-03-26 04:39:53 +09:00
irda Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-07-08 16:30:17 -07:00
iucv iucv: fix memory leak in cpu hotplug error path. 2008-07-15 02:09:53 -07:00
key Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-06-13 20:52:39 -07:00
lapb
llc llc: Use sock_graft() instead of by-hand version. 2008-06-17 01:21:03 -07:00
mac80211 mac80211: Temporarily mark QoS support BROKEN. 2008-07-17 19:21:05 -07:00
netfilter Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-07-14 20:23:54 -07:00
netlabel netlabel: return msg overflow error from netlbl_cipsov4_list faster 2008-07-14 22:28:25 -07:00
netlink Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-07-05 23:08:07 -07:00
netrom netdev: Allocate multiple queues for TX. 2008-07-17 19:21:00 -07:00
packet packet: deliver VLAN TCI to userspace 2008-07-14 22:50:39 -07:00
rfkill rfkill: ignore errors from rfkill_toggle_radio in rfkill_add_switch 2008-07-08 14:16:03 -04:00
rose netdev: Allocate multiple queues for TX. 2008-07-17 19:21:00 -07:00
rxrpc MIB: add struct net to UDP_INC_STATS_BH 2008-07-05 21:18:48 -07:00
sched net: Use queue aware tests throughout. 2008-07-17 19:21:07 -07:00
sctp mib: add net to NET_INC_STATS_BH 2008-07-16 20:31:16 -07:00
sunrpc net: remove CVS keywords 2008-06-11 21:00:38 -07:00
tipc tipc: Optimization to multicast name lookup algorithm 2008-07-14 22:45:33 -07:00
unix Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-06-28 01:19:40 -07:00
wanrouter net: Remove references to wan-router.txt in Kconfigs 2008-07-14 22:22:29 -07:00
wireless wext: make sysfs bits optional and deprecate them 2008-07-14 14:52:57 -04:00
x25 x25: Use sock_orphan() instead of open-coded (and buggy) variant. 2008-06-17 03:05:13 -07:00
xfrm xfrm: Add a XFRM_STATE_AF_UNSPEC flag to xfrm_usersa_info 2008-07-10 16:55:37 -07:00
compat.c net: Add compat support for getsockopt (MCAST_MSFILTER) 2008-04-29 03:23:22 -07:00
Kconfig net: Add STP demux layer 2008-07-05 21:25:39 -07:00
Makefile vlan: uninline __vlan_hwaccel_rx 2008-07-08 03:23:36 -07:00
nonet.c
socket.c wext: Dispatch and handle compat ioctls entirely in net/wireless/wext.c 2008-06-16 18:32:46 -07:00
sysctl_net.c net: remove CVS keywords 2008-06-11 21:00:38 -07:00
TUNABLE