ithread preemption and "panic: mi_switch: did not reenter debugger" on 'continue'

From: Robert Watson <rwatson_at_FreeBSD.org>
Date: Mon, 27 Jun 2005 14:53:32 +0100 (BST)
Set a breakpoint today on a test box, and then got the following panic. 
Is "continue" known not to work with breakpoints or did I prove in some 
way unlucky?  In particular, it looks like maybe there was an unfortunate 
interaction entering/leaving the debugger with regard to interrupt 
preemption.

Robert N M Watson

db> break crget
db> cont


[thread pid 619 tid 100102 ]
Breakpoint at   crget:  pushl   %ebp
db> trace
Tracing pid 619 tid 100102 td 0xc556ea80
crget(c556ea80,e96c2cb4,0,0,e96c2cb4) at crget
kern_execve(c556ea80,e96c2cb4,0,e277a000,e277a000) at kern_execve+0x74
execve(c556ea80,e96c2d04,3,0,206) at execve+0x32
syscall(bfbf003b,bfbf003b,bfbf003b,80e2f98,80e5608) at syscall+0x22b
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (59, FreeBSD ELF32, execve), eip = 0x2814f963, esp = 
0xbfbf68cc, ebp = 0xbfbf68e8 ---
db> cont
KDB: stack backtrace:
kdb_backtrace(c0918fe0,0,c08509aa,13b,aa59c8f7) at kdb_backtrace+0x29
mi_switch(6,c5488a80,c5488bd4,c5488a80,e7b73c38) at mi_switch+0x1af
maybe_preempt(c5488a80) at maybe_preempt+0x161
sched_add(c5488a80,4,c5420980,c5488a80,c5487c00) at sched_add+0x15a
setrunqueue(c5488a80,4) at setrunqueue+0xab
ithread_schedule(c5420980,1e,c5422780,1,c061ae98) at ithread_schedule+0xb3
intr_execute_handlers(c54148c0,e7b73cb4,1e,e7b73cf8,c07d7323) at 
intr_execute_handlers+0xe5
lapic_handle_intr(4e) at lapic_handle_intr+0x2e
Xapic_isr2() at Xapic_isr2+0x33
--- interrupt, eip = 0xc07dec81, esp = 0xe7b73cf8, ebp = 0xe7b73cf8 ---
cpu_idle_default(e7b73d0c,c061aef5,c5421a00,e7b73d24,c061acd8) at 
cpu_idle_default+0x5
cpu_idle(c5421a00,e7b73d24,c061acd8,0,e7b73d38) at cpu_idle+0x28
idle_proc(0,e7b73d38,0,c061ae98,0) at idle_proc+0x5d
fork_exit(c061ae98,0,e7b73d38) at fork_exit+0xa0
fork_trampoline() at fork_trampoline+0x8
--- trap 0x1, eip = 0, esp = 0xe7b73d6c, ebp = 0 ---
panic: mi_switch: did not reenter debugger
cpuid = 0
Uptime: 2m11s
Cannot dump. No dump device defined.
Automatic reboot in 15 seconds - press a key on the console to abort
Received on Mon Jun 27 2005 - 11:49:45 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:37 UTC