NetBSD-Users archive

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

Re: [10.99.14] cpu0: softints stuck for 16 seconds



On Sat, May 31, 2025 at 09:38:08AM +0200, BERTRAND Joël wrote:
> 	Hello,
> 
> 	Always a panic with following message:
> 
> System panicked: cpu0: softints stuck for 16 seconds
> 
> legendre# /usr/src/netbsd-current/obj/usr.sbin/crash/crash -M
> netbsd.10.core -N netbsd.10
> Crash version 10.99.14, image version 10.99.14.
> crash: _kvm_kvatop(0)
> Kernel compiled without options LOCKDEBUG.
> System panicked: cpu0: softints stuck for 16 seconds
> Backtrace from time of crash is available.
> crash> bt
> __kernel_end() at 0
> kern_reboot() at kern_reboot+0x93
> vpanic() at vpanic+0x17b
> panic() at printf_nostamp
> heartbeat() at heartbeat+0x34c
> hardclock() at hardclock+0x8b
> Xresume_lapic_ltimer() at Xresume_lapic_ltimer+0x1e
> --- interrupt ---
> mutex_vector_enter() at mutex_vector_enter+0x356
> pool_get() at pool_get+0x64
> pool_cache_get_slow() at pool_cache_get_slow+0x136
> pool_cache_get_paddr() at pool_cache_get_paddr+0x254
> m_get() at m_get+0x36
> m_copy_internal() at m_copy_internal+0xb4
> tcp_output() at tcp_output+0x197c
> tcp_input() at tcp_input+0x135e
> ipintr() at ipintr+0x879
> softint_dispatch() at softint_dispatch+0x112
> DDB lost frame for Xsoftintr+0x4c, trying 0xffff8184a84ad0f0
> Xsoftintr() at Xsoftintr+0x4c
> --- interrupt ---
> d8abf96f833b0c0e:

How old is your kernel ? Looks like the deadlock I fixed with
subr_pool.c 1.295


> 
> legendre# nm /netbsd-current | grep pool_get
> ffffffff80e4420a T pool_get
> 
> 	Something I don't understand: pool_get() address + 0x64 =
> ffffffff80Ee4426e and...
> 
> legendre# addr2line -e
> /usr/src/netbsd-current/obj/sys/arch/amd64/compile/CUSTOM/netbsd.gdb
> ffffffff80e4420a
> /usr/src/netbsd-current/src/sys/kern/subr_pool.c:1097

> 
> but:
> legendre# addr2line -e
> /usr/src/netbsd-current/obj/sys/arch/amd64/compile/CUSTOM/netbsd.gdb
> ffffffff80Ee4426e
> ??:0
> 
> 	I have saved core and kernel (1,3 GB) but I don't know how to obtain
> more information.

If you already have subr_pool.c 1.295, we'd need the stack trace for each CPU:
in crash:
mach cpu 0
tr
mach cpu 1
tr
...
mach cpu 9
tr
mach cpu a # the cpu number is interpreted in hex !
tr
mach cpu b
tr
[...]

-- 
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index