Date: Mon, 5 Oct 2009 22:24:13 +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: <200910052224.n95MOTmO058260@repoman.freebsd.org>
index | next in thread | raw e-mail
rwatson 2009-10-05 22:24:13 UTC
FreeBSD src repository
Modified files:
sys/netinet tcp_input.c
Log:
SVN rev 197795 on 2009-10-05 22:24:13Z by rwatson
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.
MFC after: 3 days
Reported by: Kamigishi Rei <spambox at haruhiism.net>
Reviewed by: bz
Revision Changes Path
1.412 +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?200910052224.n95MOTmO058260>
