LOR: sigacts vs Giant
Marcel Moolenaar
marcel at xcllnt.net
Wed Aug 13 11:02:04 PDT 2003
Gang,
When the copyout() in sendsig() fails and we call sigexit(), we get
into the following LOR:
lock order reversal
1st 0xe0000000300ffca8 sigacts (sigacts) @ kern/subr_trap.c:260
2nd 0xe000000000b75250 Giant (Giant) @ kern/kern_sig.c:2407
Stack backtrace:
witness_lock
Stopped at Debugger+0x31: nop.m 0x0
db> trace
Debugger(0xe000000000a41340, 0xe00000000078abe0, 0xea3, 0x1) at Debugger+0x30
witness_lock(0xe000000000b75250, 0x8, 0xe000000000a3cdc9, 0x967) at witness_lock+0xf60
_mtx_lock_flags(0xe000000000b75250, 0x0, 0xe000000000a3cdc0, 0x967, 0xe000000000747470, 0x30d, 0xe000000000a5c661) at _mtx_lock_flags+0x130
sigexit(0xe00000002fa4c000, 0xb, 0xe00000002f94afc8, 0xe0000000009ebfe0) at sigexit+0x140
sendsig(0x400000000005fbf0, 0x2, 0xa00000002308d360, 0x0) at sendsig+0x520
postsig(0x2, 0xe00000002fa4c000, 0xe0000000300ff000, 0xe00000002f94afc8) at postsig+0x7f0
ast(0xa00000002308d400) at ast+0x820
:
FYI,
--
Marcel Moolenaar USPA: A-39004 marcel at xcllnt.net
More information about the freebsd-current
mailing list