Re: panic: tcp_input: TCPS_LISTEN in netinet/tcp_input.c:1016

From: Robert Watson <rwatson_at_reeBSD.org>
Date: Wed, 16 Feb 2005 14:35:23 +0000 (GMT)
On Wed, 16 Feb 2005, Andre Oppermann wrote:

> I was pulling out my hair because I couldn't figure out how this can
> happen.  I never thought about the socket layer and was only tracing and
> following the TCP code back and forth and back and forth...  Really good
> catch! 

I went to bed last night after a few hours of trying to figure out how on
earth we could be racing during socket allocation and getting our tcpcb's
mixed up, but had just noticed that the contents of the tcpcb were
basically in the "I've just been listen()'d" state, and the socket looked
like it was exposed to the user (no SS_NOFDREF) but otherwise unused.  I
woke up in the morning thinking "Oh.  I guess it's still being set up to
listen, which would explain the lack of SO_ACCEPTCONN".  I guess sleeping
on things really does help :-).

Not sure if you saw my post on freebsd-net this afternoon, but if you have
a moment, I'd like your insight into the conditional setting of
SO_ACCEPTCONN in solisten(), which would be nice to get rid of if it's
unneeded.

Robert N M Watson
Received on Wed Feb 16 2005 - 13:36:46 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:28 UTC