cvs commit: src/sys/netinet tcp_subr.c

Ion-Mihai IOnut Tetcu itetcu at FreeBSD.org
Sun Dec 31 05:24:20 PST 2006


On Sat, 30 Dec 2006 16:03:44 +0000 (UTC)
Robert Watson <rwatson at FreeBSD.org> wrote:

> rwatson     2006-12-30 16:03:44 UTC
> 
>   FreeBSD src repository
> 
>   Modified files:        (Branch: RELENG_6)
>     sys/netinet          tcp_subr.c 
>   Log:
>   Merge tcp_subr.c:1.251 from HEAD to RELENG_6:
>   
>     Fix race conditions on enumerating pcb lists by moving the
> initialization (and where appropriate the destruction) of the pcb
> mutex to the init/finit functions of the pcb zones.  This allows
> locking of the pcb entries and race condition free comparison of the
> generation count. Rearrange locking a bit to avoid extra locking
> operation to update the generation count in in_pcballoc().
> (in_pcballoc now returns the pcb locked)
>   
>     I am planning to convert pcb list handling from a type safe to a
>     reference count model soon.  (As this allows really freeing the
> PCBs) 
>     Reviewed by:    rwatson, mohans
>   
>   This was missed in jhb's earlier MFC, and lead to a panic when
> creating TCP sockets.

Thanks you !  I lost my last night plus part of the day trying to
understand why a server suddenly panic'ed on boot :(
Now I know :-)

-- 
IOnut - Un^d^dregistered ;) FreeBSD "user"
  "Intellectual Property" is   nowhere near as valuable   as "Intellect"

BOFH excuse #152:
My pony-tail hit the on/off switch on the power strip


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/cvs-src/attachments/20061231/a63583ee/signature.pgp


More information about the cvs-src mailing list