1
linux/net
Stephen Hemminger 0f9f32ac65 [PKT_SCHED] netem: use only inner qdisc -- no private skbuff queue
Netem works better if there if packets are just queued in the inner discipline
rather than having a separate delayed queue. Change to use the dequeue/requeue
to peek like TBF does.

By doing this potential qlen problems with the old method are avoided. The problems
happened when the netem_run that moved packets from the inner discipline to the nested
discipline failed (because inner queue was full). This happened in dequeue, so the
effective qlen of the netem would be decreased (because of the drop), but there was
no way to keep the outer qdisc (caller of netem dequeue) in sync.

The problem window is still there since this patch doesn't address the issue of
requeue failing in netem_dequeue, but that shouldn't happen since the sequence dequeue/requeue
should always work.  Long term correct fix is to implement qdisc->peek in all the qdisc's
to allow for this (needed by several other qdisc's as well).

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-05-26 12:55:01 -07:00
..
802 [PATCH] update Ross Biro bouncing email address 2005-05-05 16:36:49 -07:00
8021q [PATCH] misc verify_area cleanups 2005-05-01 08:59:08 -07:00
appletalk [ATALK]: Add alloc_ltalkdev(). 2005-05-05 14:25:59 -07:00
atm [PATCH] misc verify_area cleanups 2005-05-01 08:59:08 -07:00
ax25 [AX25] Introduce ax25_type_trans 2005-04-24 18:53:06 -07:00
bluetooth [NET]: kill gratitious includes of major.h 2005-04-25 21:40:39 -07:00
bridge [PATCH] kobject/hotplug split - net bridge 2005-04-18 21:57:37 -07:00
core [PATCH] update Ross Biro bouncing email address 2005-05-05 16:36:49 -07:00
decnet [DECNET]: Fix build after C99 netlink initializer change. 2005-05-05 13:13:29 -07:00
econet Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ethernet [PATCH] update Ross Biro bouncing email address 2005-05-05 16:36:49 -07:00
ipv4 [TCP]: Fix stretch ACK performance killer when doing ucopy. 2005-05-23 12:03:06 -07:00
ipv6 [IPV6]: Fix xfrm tunnel oops with large packets 2005-05-23 13:11:07 -07:00
ipx Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
irda [PATCH] ISA DMA Kconfig fixes - part 4 (irda) 2005-05-04 07:33:14 -07:00
key Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
lapb Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
llc Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
netlink [NETLINK]: Defer socket destruction a bit 2005-05-19 13:07:32 -07:00
netrom Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
packet [PATCH] update Ross Biro bouncing email address 2005-05-05 16:36:49 -07:00
rose Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rxrpc Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sched [PKT_SCHED] netem: use only inner qdisc -- no private skbuff queue 2005-05-26 12:55:01 -07:00
sctp [SCTP] Fix SCTP sendbuffer accouting. 2005-04-28 12:02:04 -07:00
sunrpc [PATCH] DocBook: changes and extensions to the kernel documentation 2005-05-01 08:59:25 -07:00
unix [AF_UNIX]: Use lookup_create(). 2005-05-19 12:26:43 -07:00
wanrouter [PATCH] misc verify_area cleanups 2005-05-01 08:59:08 -07:00
x25 Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm [IPSEC]: Verify key payload in verify_one_algo 2005-05-19 12:39:49 -07:00
compat.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Kconfig Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
nonet.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
socket.c [PATCH] update Ross Biro bouncing email address 2005-05-05 16:36:49 -07:00
sysctl_net.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
TUNABLE Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00