Date: Thu, 8 Oct 2009 11:07:15 +0000 (UTC) From: Robert Watson <rwatson@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/netinet tcp_input.c Message-ID: <200910081107.n98B7c6w042812@repoman.freebsd.org>
index | next in thread | raw e-mail
rwatson 2009-10-08 11:07:15 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_8)
sys/netinet tcp_input.c
Log:
SVN rev 197854 on 2009-10-08 11:07:15Z by rwatson
Merge r197795 from head to stable/8:
In tcp_input(), we acquire a global write lock at first only if a
segment is likely to trigger a TCP state change (i.e., FIN/RST/SYN).
If we later have to upgrade the lock, we acquire an inpcb reference
and drop both global/inpcb locks before reacquiring in-order. In
that gap, the connection may transition into TIMEWAIT, so we need
to loop back and reevaluate the inpcb after relocking.
Reported by: Kamigishi Rei <spambox at haruhiism.net>
Reviewed by: bz
Approved by: re (kib)
Revision Changes Path
1.411.2.2 +4 -1 src/sys/netinet/tcp_input.c
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200910081107.n98B7c6w042812>
