cvs commit: src/sys/kern uipc_socket.c

Bjoern A. Zeeb bzeeb-lists at
Tue Nov 29 19:53:01 GMT 2005

On Mon, 28 Nov 2005, Robert Watson wrote:

> rwatson     2005-11-28 18:09:03 UTC
>  FreeBSD src repository
>  Modified files:
>    sys/kern             uipc_socket.c
>  Log:
>  Break out functionality in sosend() responsible for building mbuf
>  chains and copying in mbufs from the body of the send logic, creating
>  a new function sosend_copyin().  This changes makes sosend() almost
>  readable, and will allow the same logic to be used by tailored socket
>  send routines.
>  MFC after:      1 month
>  Reviewed by:    andre, glebius
>  Revision  Changes    Path
>  1.253     +170 -141  src/sys/kern/uipc_socket.c

there seems to be some locking problem. I can easily reproduce that
with a dmesg of a bootverbose boot on a ssh connection:

System call write returning with the following locks held:
exclusive sleep mutex so_snd r = 0 (0xffffff0094a78670) locked @ /local/building/freebsd/HEAD/sys/kern/uipc_socket.c:884
panic: witness_warn
KDB: enter: panic
[thread pid 523 tid 100061 ]
Stopped at      kdb_enter+0x31: leave

Bjoern A. Zeeb				bzeeb at Zabbadoz dot NeT

More information about the cvs-src mailing list