Probably not a kernel bug (was: Re: FreeBSD 7.0: sockets stuck in
CLOSED state...)
Robert Watson
rwatson at FreeBSD.org
Sun Jun 29 06:42:25 UTC 2008
On Fri, 27 Jun 2008, Robert Watson wrote:
> I've asked Ali to do a bit more debugging and tracing of the application to
> see if we can reach any conclusions about this. In particular, if he traces
> to a file all file descriptor numbers returned by accept(2), then we can
> later compare that file with the leaked descriptors present in
> netstat/sockstat and decide whether the application *should* have known they
> were open or not.
Another public follow-up: Ali has been sending me debugging information
privately due to the inclusion of application source code and IP addresses.
Tracing of the application suggests that there is an application concurrency
bug leading to one socket to be closed twice and another socket to be left
open. The bug might be triggering in 7.x but not earlier releases because of
the change to libthr, which can lead to more parallelism/asynchrony in the
application.
In conclusion: we currently believe that this report of sockets stuck in the
CLOSED state is not the result of a kernel bug. If any further information
comes to light, I will send a followup.
Thanks,
Robert N M Watson
Computer Laboratory
University of Cambridge
More information about the freebsd-net
mailing list