freebsd-dev/sys
Andre Oppermann 1593dcd025 Prevent TCP sessions from stalling indefinitely in reassembly
when reaching the zone limit of reassembly queue entries.

When the zone limit was reached not even the missing segment
that would complete the sequence space could be processed
preventing the TCP session forever from making any further
progress.

Solve this deadlock by using a temporary on-stack queue entry
for the missing segment followed by an immediate dequeue again
by delivering the contiguous sequence space to the socket.

Add logging under net.inet.tcp.log_debug for reassembly queue
issues.

Reviewed by:	lsteward (previous version)
Tested by: 	Steven Hartland <killing-at-multiplay.co.uk>
MFC after:	3 days
2011-10-07 16:39:03 +00:00
..
amd64 Remove unused define. 2011-10-07 16:09:44 +00:00
arm Remove unused define. 2011-10-07 16:09:44 +00:00
boot Allow ixp425 boot2 to compile after r219452 2011-10-04 00:15:40 +00:00
bsm
cam Add descriptor sense support to CAM, and honor sense residuals properly in 2011-10-03 20:32:55 +00:00
cddl In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
compat Use the caculated length instead of maximum length. 2011-10-06 21:55:05 +00:00
conf Add strnlen() to libkern. 2011-10-04 23:53:47 +00:00
contrib Use the correct byte order for the ip_divert(4) mbuf tag port meta 2011-08-25 09:38:33 +00:00
crypto
ddb Follow up to r225203 refining break-to-debugger run-time configuration 2011-08-27 14:24:27 +00:00
dev Merge from r225950: 2011-10-07 08:59:54 +00:00
fs Export devfs inode number allocator for the kernel consumers. 2011-10-05 16:50:15 +00:00
gdb Modify kdb_trap() so that it re-calls the dbbe_trap function as long as 2011-02-18 22:25:11 +00:00
geom Add some spare fields to the g_class and g_geom structures needed to implement 2011-07-17 20:35:30 +00:00
gnu Second-to-last commit implementing Capsicum capabilities in the FreeBSD 2011-08-11 12:30:23 +00:00
i386 Remove unused define. 2011-10-07 16:09:44 +00:00
ia64 Remove unused define. 2011-10-07 16:09:44 +00:00
isa
kern Change one printf() to log(). 2011-10-07 09:51:12 +00:00
kgssapi In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
libkern Add strnlen() to libkern. 2011-10-04 23:53:47 +00:00
mips Remove unused define. 2011-10-07 16:09:44 +00:00
modules Add the 9750 SATA+SAS 6Gb/s RAID controller card driver, tws(4). Many 2011-10-04 21:40:25 +00:00
net Pass the fibnum where we need filtering of the message on the 2011-09-28 13:48:36 +00:00
net80211 Fix a panic in the wifi stack when a software beacon miss occurs in the wrong state. 2011-10-02 02:42:31 +00:00
netatalk
netgraph Add IPv6 support to the ng_ipfw(4) [1]. Also add ifdefs to be able 2011-09-15 12:28:17 +00:00
netinet Prevent TCP sessions from stalling indefinitely in reassembly 2011-10-07 16:39:03 +00:00
netinet6 The IFA_RTSELF instead of the IFA_ROUTE flag should be checked to 2011-10-05 16:27:11 +00:00
netipsec Update packet filter (pf) code to OpenBSD 4.5. 2011-06-28 11:57:25 +00:00
netipx
netnatm
netncp
netsmb
nfs In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
nfsclient Merge 220876, 220877, and 221537 from the new NFS client to the old: 2011-08-09 15:29:58 +00:00
nfsserver Fix the NFS servers so that they can do a Lookup of "..", 2011-09-03 00:28:53 +00:00
nlm In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
ofed Add the fo_chown and fo_chmod methods to struct fileops and use them 2011-08-16 20:07:47 +00:00
opencrypto Add the fo_chown and fo_chmod methods to struct fileops and use them 2011-08-16 20:07:47 +00:00
pc98 MFi386: revision 225936 2011-10-04 13:24:22 +00:00
pci Add new device id of D-Link DGE-530T Rev. C controller. DGE-503T 2011-07-30 01:06:12 +00:00
powerpc Remove unused define. 2011-10-07 16:09:44 +00:00
rpc Remove an extraneous "already" from a comment introduced by r226081. 2011-10-07 13:16:21 +00:00
security In order to maximize the re-usability of kernel code in user space this 2011-09-16 13:58:51 +00:00
sparc64 Remove unused define. 2011-10-07 16:09:44 +00:00
sys Increase MSGBUF_SIZE. 2011-10-07 06:00:00 +00:00
teken Fix whitespace inconsistencies found in homegrown Symbol.maps. 2011-10-07 15:05:24 +00:00
tools
ufs This update eliminates a lock-order reversal warning discovered 2011-09-27 17:41:48 +00:00
vm Style nit. 2011-09-29 00:44:34 +00:00
x86 Ignore SRAT memory entries if the memory range does not overlap with an 2011-10-05 16:03:47 +00:00
xdr
xen Properly handle suspend/resume events in the Xen device 2011-09-20 23:44:34 +00:00
Makefile