lang: en

FreeBSD lock order reversal (LOR) #173

ID 173
state patched
responsible rwatson
reported first 2005-11-29
reported last 2005-11-29
do you know more? submit update by email
LOR
Lock order reversal:
 1st 0xc5ef0ec so_snd (so_snd) @ sys/kern/uipc_socket.c:780
 2nd 0xc0ac15ec tcp (tcp) @ sys/netinet/tcp_usrreq.c:580
		
KDB: stack backstrace:
kdb_backtrace() at kdb_backtrace+0x2e
witness_checkorder() at witness_checkorder+0x6d3
_mtx_lock_flags() at _mtx_lock_flags+0x8a
tcp_usr_shutdown() at tcp_usr_shutdown+0x3d
soshutdown() at soshutdown+0x41
nfs_disconnect() at nfs_disconnect+0xd5
nfs_reconnect() at nfs_reconnect+0x1c
nfs_reply() at nfs_reply+0x170
nfs_request() at nfs_request+0x451
nfs3_access_otw() at nfs3_access_otw+0xde
nfs_access() at nfs_access+0x120
VOP_ACCESS_APV() at VOP_ACCESS_APV+0xac
nfs_lookup() at nfs_lookup+0xe5
VOP_LOOKUP_APV() at VOP_LOOKUP_APV+0xb4
lookup() at lookup+0x468
namei() at namei+0x468
kern_stat() at kern_stat+0x3d
stat() at stat+0x2f
syscall() at Xint0x80_syscall+0x1f
--- syscall (188, FreeBSD ELF32, stat, eip = 0x2819ad63, esp = 0xbfbfe8cc, ebp = 0xbfbfe9c8 ---
panic: _mtx_lock_sleep: recursed on non-recursive mutex so_snd @ /usr/src/sys/kern/uipc_socket.c:391
		
comments/references