lang: en

FreeBSD lock order reversal (LOR) #184

ID 184
state unknown
responsible
reported first 2006-04-16
reported last 2006-04-16
do you know more? submit update by email
LOR
lock order reversal: (Giant after non-sleepable)
 1st 0xc079c280 bpf global lock (bpf global lock) @ sys/net/bpf.c:425
 2nd 0xc07502c0 Giant (Giant) @ sys/kern/kern_synch.c:216
		
KDB: stack backtrace:
kdb_backtrace(0,ffffffff,c075f100,c075f588,c0724364) at kdb_backtrace+0x29
witness_checkorder(c07502c0,9,c06d7c0d,d8) at witness_checkorder+0x578
_mtx_lock_flags(c07502c0,0,c06d7c0d,d8) at _mtx_lock_flags+0x5b
msleep(c5c49c00,0,4c,c06cf607,0) at msleep+0x2d2
usbd_transfer(c5c49c00,ef53f8f4,c04d6b05,c5c49c00,278940c2) at usbd_transfer+0x121
usbd_sync_transfer(c5c49c00,278940c2,c5a8acf0,c5a8c300,c4c26000) at usbd_sync_transfer+0x11
usbd_do_request_flags_pipe(c4bf7580,c4bf7500,ef53f950,ef53f94e,0) at usbd_do_request_flags_pipe+0x5d
usbd_do_request_flags(c4bf7580,ef53f950,ef53f94e,0,0) at usbd_do_request_flags+0x20
usbd_do_request(c4bf7580,ef53f950,ef53f94e) at usbd_do_request+0x1a
ural_read(c4c26000,444,c4c26000,0,ef53f990) at ural_read+0x42
ural_update_promisc(c4c26000) at ural_update_promisc+0x16
ural_ioctl(c4c1bc00,80206910,ef53f9ac,1,108903) at ural_ioctl+0x55
if_setflag(c4c1bc00,100,20000,c4c1bc44,0) at if_setflag+0x120
ifpromisc(c4c1bc00,0) at ifpromisc+0x23
bpf_detachd(c52b6a00) at bpf_detachd+0xae
bpfclose(c5c49100,7,2000,c5a8c300,c07502c0) at bpfclose+0x83
giant_close(c5c49100,7,2000,c5a8c300,c5c49100) at giant_close+0x30
devfs_close(ef53fab4) at devfs_close+0x2db
VOP_CLOSE_APV(c071cd40,ef53fab4) at VOP_CLOSE_APV+0x7e
vn_close(c5ef6dd0,7,c52d2e00,c5a8c300,0) at vn_close+0x8b
vn_closefile(c5c83cf0,c5a8c300,ef53fb6c,c0508328,c5c83cf0) at vn_closefile+0xca
devfs_close_f(c5c83cf0,c5a8c300) at devfs_close_f+0xf
fdrop_locked(c5c83cf0,c5a8c300,c4ae9640,0,c06d3ea7) at fdrop_locked+0x88
fdrop(c5c83cf0,c5a8c300,6b2,c07555c0,0) at fdrop+0x24
closef(c5c83cf0,c5a8c300) at closef+0x367
fdfree(c5a8c300) at fdfree+0x4a3
exit1(c5a8c300,0,ef53fd30,c069a577,c5a8c300) at exit1+0x438
exit1(c5a8c300,ef53fd04,1,6d,292) at exit1
syscall(3b,3b,3b,bfbf8f90,1) at syscall+0x22f
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (1, FreeBSD ELF32, sys_exit), eip = 0x482d4027, esp = 0xbfbf8f5c, ebp = 0xbfbf8f78 ---
		
comments/references