FreeBSD lock order reversal (LOR) #191
ID | 191 |
state | patched (might have lead to deadlock) might be back |
responsible | mlaier |
reported first | 2006-06-11 |
reported last | 2007-05-25 |
do you know more? | submit update by email |
LOR |
lock order reversal: 1st 0xc077a440 pf task mtx (pf task mtx) @ sys/contrib/pf/net/pf.c:6331 2nd 0xc07d3fac tcp (tcp) @ sys/contrib/pf/net/pf.c:2719 KDB: stack backtrace: witness_checkorder(c07d3fac,9,c06fd2f7,a9f) at witness_checkorder+0x55c _mtx_lock_flags(c07d3fac,0,c06fd2f7,a9f,c07d3fac) at _mtx_lock_flags+0x40 pf_socket_lookup(e35ccacc,e35ccad0,1,e35ccb8c,0) at pf_socket_lookup+0x103 pf_test_tcp(e35ccb3c,e35ccb34,1,c4d3e400,c5027c00,14,c5032810,e35ccb8c,e35ccb40,e35ccb44,0,0) at pf_test_tcp+0x10d6 pf_test(1,c4ba3c00,e35ccc2c,0,0) at pf_test+0xb77 pf_check_in(0,e35ccc2c,c4ba3c00,1,0) at pf_check_in+0x37 pfil_run_hooks(c07d3b60,e35ccccc,c4ba3c00,1,0) at pfil_run_hooks+0xee ip_input(c5027c00,18,c07d3138,e35cccec,c05dcd63) at ip_input+0x1b2 netisr_processqueue(c4b24500,c4b28000,0,e35ccd0c,c055877b) at netisr_processqueue+0xf swi_net(0,c4b28038,c4ad6d80,c0558590,c4ad520c) at swi_net+0x8b ithread_loop(c4ab68d0,e35ccd38,c4ab68d0,c0558590,0) at ithread_loop+0x1eb fork_exit(c0558590,c4ab68d0,e35ccd38) at fork_exit+0x7d fork_trampoline() at fork_trampoline+0x8 --- trap 0x1, eip = 0, esp = 0xe35ccd6c, ebp = 0 --- lock order reversal: 1st 0xc44d8c44 pf task mtx (pf task mtx) @ sys/modules/pf/../../contrib/pf/net/pf.c:6414 2nd 0xc0a9df6c tcp (tcp) @ sys/modules/pf/../../contrib/pf/net/pf.c:2760 KDB: stack backtrace: db_trace_self_wrapper(c094da94) at db_trace_self_wrapper+0x25 kdb_backtrace(0,ffffffff,c0a5d7d8,c0a5f330,c09f6c04,...) at kdb_backtrace+0x29 witness_checkorder(c0a9df6c,9,c44d5e24,ac8) at witness_checkorder+0x586 _mtx_lock_flags(c0a9df6c,0,c44d5e24,ac8,c0a9df6c,...) at _mtx_lock_flags+0x84 pf_socket_lookup(e466da84,e466da88,1,e466db40,0,...) at pf_socket_lookup+0x1d3 pf_test_tcp(e466daf0,e466dae8,1,c4505d00,c4467700,...) at pf_test_tcp+0x11e6 pf_test(1,c4098800,e466dbdc,0,0,...) at pf_test+0xae3 pf_check_in(0,e466dbdc,c4098800,1,0) at pf_check_in+0x37 pfil_run_hooks(c0a9db40,e466dc2c,c4098800,1,0) at pfil_run_hooks+0x7f ip_input(c4467700) at ip_input+0x232 netisr_dispatch(2,c4467700,0,c4098800,c44a0800,...) at netisr_dispatch+0x58 ether_demux(c4098800,c4467700,c4037000,c44a1002,e466dca0,...) at ether_demux+0x28a ether_input(c4098800,c4467700,c4037014,0,c092325d,...) at ether_input+0x202 fxp_intr_body(c4037000,c4098800,40,ffffffff) at fxp_intr_body+0x1a0 fxp_intr(c4037000) at fxp_intr+0x95 ithread_execute_handlers(c40a0240,c3f46900) at ithread_execute_handlers+0x11e ithread_loop(c40433a0,e466dd38) at ithread_loop+0x67 fork_exit(c06adf00,c40433a0,e466dd38) at fork_exit+0xac fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xe466dd70, ebp = 0 --- |
comments/references |
|