Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

LOCKDEBUG panic ... rw_vector_enter: assertion failed: !cpu_intr_p()



Hi,

I just got a highly reproductible panic on my up-to-date -current
NetBSD/amd64 workstation, by running Linux/x86_64 hostid binary ...

Unfortunately i don't have much info yet ... a LOCKDEBUG kernel hang
solid needing a power-cycle to recover.

njoly@lanfeust [~]> uname -a
NetBSD lanfeust.sis.pasteur.fr 4.99.55 NetBSD 4.99.55 (LANFEUST) #32: Mon Mar  
3 11:31:41 CET 2008  
njoly%lanfeust.sis.pasteur.fr@localhost:/local/src/NetBSD/obj.amd64/sys/arch/amd64/compile/LANFEUST
 amd64
njoly@lanfeust [~]> file /misc/linux/bin/hostid 
/misc/linux/bin/hostid: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), 
for GNU/Linux 2.4.1, dynamically linked (uses shared libs), stripped
njoly@lanfeust [~]> /misc/linux/bin/hostid
-rwxr-xr-x  1 root  wheel  17184 Feb  9  2006 /misc/linux/bin/hostid
[PANIC HERE]

From a DIAGNOSTIC+LOCKDEBUG kernel:

kernel: double fault trap, code=0
Reader / writer lock error: rw_vector_enter: assertion failed: !cpu_intr_p()

lock address : 0xffff800049264818 type     :     sleep/adaptive
shared holds :                  0 exclusive:                  0
shares wanted:                  0 exclusive:                  0
current cpu  :                  0 last held:                  0
current lwp  : 0xffff800049aaf000 last held: 000000000000000000
last locked  : 0xffffffff803c1187 unlocked : 0xffffffff803ba582
initialized  : 0xffffffff803bf8e6
owner/count  : 000000000000000000 flags    : 0x0000000000000008

Turnstile chain at 0xffffffff80c48d20.
=> No active turnstile for this lock.

panic: LOCKDEBUG
Stopped in pid 508.1 (hostid) at       0x18c7c7
4800000018:uvm_fault(0xffff800049264810, 0x7fbff1d20000, 1) -> e
     kernel: page fault trap, code=0
[HANG HERE ...]

From the same kernel without DIAGNOTIC and LOCKDEBUG:

kernel: double fault trap, code=0
Stopped in pid 24258.1 (hostid) at      netbsd:mutex_spin_enter+0x1d:   movzbl
0x1(%rdi),%ecx
db{0}> mach cpu 0
using CPU 0
db{0}> bt
mutex_spin_enter() at netbsd:mutex_spin_enter+0x1d
hardclock() at netbsd:hardclock+0x17d
Xresume_lapic_ltimer() at netbsd:Xresume_lapic_ltimer+0x21
--- interrupt ---
Xspllower() at netbsd:Xspllower+0xe
db_putchar() at netbsd:db_putchar+0x1a1
kprintf() at netbsd:kprintf+0x3ea
db_printf() at netbsd:db_printf+0xb4
kdb_trap() at netbsd:kdb_trap+0x1bc
trap() at netbsd:trap+0x243
--- trap (number 6) ---
Bad frame pointer: 0xffff800049314310
netbsd:trap+0x68a:
db{0}> mach cpu 1
using CPU 1
db{0}> bt
x86_pause() at netbsd:x86_pause+0x2
soo_poll() at netbsd:soo_poll+0x3d
pollcommon() at netbsd:pollcommon+0x283
sys_poll() at netbsd:sys_poll+0x5b
syscall() at netbsd:syscall+0xaf

Thanks in advance,
Regards.

-- 
Nicolas Joly

Biological Software and Databanks.
Institut Pasteur, Paris.


Home | Main Index | Thread Index | Old Index