Re: spin lock panic in 5.2-REL (more info)

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Thu, 29 Jan 2004 10:48:20 -0500
On Thursday 29 January 2004 05:06 am, Peter Losher wrote:
> login: spin lock sched lock held by 0x8d2f7a00 for > 5 seconds
> panic: spin lock held too long
> cpuid = 4;
> Debugger("panic")
> Stopped at      Debugger+0x55:  xchgl   %ebx,in_Debugger.0
> db> trace
> Debugger(80857eb0,4,808577cc,f6a46bd4,100) at Debugger+0x55
> panic(808577cc,80857891,8d2f7a00,80910ee0,8726ad80) at panic+0x156
> _mtx_lock_spin(80910ee0,0,8085636e,18d,8d2f7b40) at _mtx_lock_spin+0x9f
> _mtx_lock_spin_flags(80910ee0,0,8085636e,18d,4) at
> _mtx_lock_spin_flags+0x60
> ithread_schedule(8726ad80,1,f6a46c70,1c,8726ca00) at
> ithread_schedule+0xae
> intr_execute_handlers(8d2d0f4c,f6a46c74,f6a46cb8,807d84e3,4c) at
> intr_execute_handlers+0xe9
> lapic_handle_intr(4c) at lapic_handle_intr+0x3a
> Xapic_isr2() at Xapic_isr2+0x33
> --- interrupt, eip = 0x80a2fef5, esp = 0xf6a46cb8, ebp = 0xf6a46cb8 ---
> acpi_cpu_c1(1,1,0,b6e31890,246) at acpi_cpu_c1+0x5
> acpi_cpu_idle(f6a46d10,806251f8,80910ee0,0,8085631b) at
> acpi_cpu_idle+0xd5
> cpu_idle(80910ee0,0,8085631b,5c,8726b710) at cpu_idle+0x28
> idle_proc(0,f6a46d48,8085621f,311,0) at idle_proc+0x18
> fork_exit(806251e0,0,f6a46d48) at fork_exit+0x7e
> fork_trampoline() at fork_trampoline+0x8
> --- trap 0x1, eip = 0, esp = 0xf6a46d7c, ebp = 0 ---

Can you use show pcpu to find what threads are executing on other CPUs and get 
traces of those threads via 'tr <pid>'?  We need to figure out where 
sched_lock is being held so long.

-- 
John Baldwin <jhb_at_FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org
Received on Thu Jan 29 2004 - 06:59:00 UTC

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