Revision 8872d8e1c4311dd7e5086975df9c76120a0be83b authored by Angelo P. Castellani on 17 May 2006, 04:42:11 UTC, committed by David S. Miller on 17 May 2006, 04:42:11 UTC
From: "Angelo P. Castellani" <angelo.castellani+lkml@gmail.com>

Using NewReno, if a sk_buff is timed out and is accounted as lost_out,
it should also be removed from the sacked_out.

This is necessary because recovery using NewReno fast retransmit could
take up to a lot RTTs and the sk_buff RTO can expire without actually
being really lost.

left_out = sacked_out + lost_out
in_flight = packets_out - left_out + retrans_out

Using NewReno without this patch, on very large network losses,
left_out becames bigger than packets_out + retrans_out (!!).

For this reason unsigned integer in_flight overflows to 2^32 - something.

Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent d8fd0a7
History
File Mode Size
Kconfig -rw-r--r-- 1.1 KB
Kconfig.iosched -rw-r--r-- 1.9 KB
Makefile -rw-r--r-- 333 bytes
as-iosched.c -rw-r--r-- 45.6 KB
blktrace.c -rw-r--r-- 11.8 KB
cfq-iosched.c -rw-r--r-- 58.0 KB
deadline-iosched.c -rw-r--r-- 19.0 KB
elevator.c -rw-r--r-- 20.1 KB
genhd.c -rw-r--r-- 16.7 KB
ioctl.c -rw-r--r-- 7.4 KB
ll_rw_blk.c -rw-r--r-- 98.9 KB
noop-iosched.c -rw-r--r-- 2.6 KB
scsi_ioctl.c -rw-r--r-- 16.4 KB

back to top