NetBSD-Bugs archive

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

Re: kern/59339: heartbeat watchdog fires since 10.99.14



The following reply was made to PR kern/59339; it has been noted by GNATS.

From: Thomas Klausner <wiz%NetBSD.org@localhost>
To: Taylor R Campbell <riastradh%NetBSD.org@localhost>
Cc: NetBSD bugtracking <gnats-bugs%NetBSD.org@localhost>
Subject: Re: kern/59339: heartbeat watchdog fires since 10.99.14
Date: Sat, 10 May 2025 10:10:30 +0200

 On Sat, May 10, 2025 at 01:03:40AM +0000, Taylor R Campbell wrote:
 > Better yet, try the attached patch.  It will print a message to the
 > console if the circumstances that I hypothesize _could_ cause the hang
 > occur, but avoids those circumstances at the same time.
 
 With a kernel from ~3 hours ago and this patch (v3) applied, I saw:
 
 panic: kernel diagnostic assertion "ticks > 0" failed: file "/disk/storage-202410/archive/foreign/src/sys/kern/kern_time.c", line 902 [clock 0] now=1746864040.736221265 interval=0.010000000 next=1746864040.736222027 delta=0.000000762 ticks=0
 
 gdb says:
 
 (gdb) bt
 #0  0xffffffff80239b85 in cpu_reboot (howto=howto@entry=260, bootstr=bootstr@entry=0x0) at /usr/src/sys/arch/amd64/amd64/machdep.c:709
 #1  0xffffffff80de3b15 in kern_reboot (howto=howto@entry=260, bootstr=bootstr@entry=0x0) at /usr/src/sys/kern/kern_reboot.c:91
 #2  0xffffffff80e29b33 in vpanic (fmt=0xffffffff814f20c0 "kernel %sassertion \"%s\" failed: file \"%s\", line %d [clock %u] now=%lld.%09ld interval=%lld.%09ld next=%lld.%09ld delta=%lld.%09ld ticks=%d",
     ap=ap@entry=0xffffce246a3f8ec8) at /usr/src/sys/kern/subr_prf.c:288
 #3  0xffffffff80ff837c in kern_assert (fmt=fmt@entry=0xffffffff814f20c0 "kernel %sassertion \"%s\" failed: file \"%s\", line %d [clock %u] now=%lld.%09ld interval=%lld.%09ld next=%lld.%09ld delta=%lld.%09ld ticks=%d")
     at /usr/src/sys/lib/libkern/kern_assert.c:51
 #4  0xffffffff80dff441 in itimer_rearm_real (now=0xffffce246a3f8f80, it=0xffff84a9f2e4a5c0) at /usr/src/sys/kern/kern_time.c:902
 #5  itimer_callout (arg=0xffff84a9f2e4a5c0) at /usr/src/sys/kern/kern_time.c:970
 #6  0xffffffff80e02519 in callout_softclock (v=<optimized out>) at /usr/src/sys/kern/kern_timeout.c:872
 #7  0xffffffff80df201e in softint_execute (s=2, l=0xffff84b0570db000) at /usr/src/sys/kern/kern_softint.c:599
 #8  softint_dispatch (pinned=<optimized out>, s=2) at /usr/src/sys/kern/kern_softint.c:848
 #9  0xffffffff8023480c in Xsoftintr ()
 (gdb) fr 4
 #4  0xffffffff80dff441 in itimer_rearm_real (now=0xffffce246a3f8f80, it=0xffff84a9f2e4a5c0) at /usr/src/sys/kern/kern_time.c:902
 warning: 902    /usr/src/sys/kern/kern_time.c: No such file or directory
 (gdb) p *now
 $1 = {tv_sec = 1746864040, tv_nsec = 736221265}
 (gdb) p *it
 $2 = {{it_real = {it_ch = {_c_store = {0xffffce010b0be098, 0xffffce010b0be098, 0xffffffff80dff106 <itimer_callout>, 0xffff84a9f2e4a5c0, 0xffffce010b0be000, 0x10c000b4ee4, 0x11deeba1, 0x0, 0x0, 0x0}}, it_rtchgq = {
         le_next = 0x0, le_prev = 0x0}}, it_virtual = {it_vlist = 0xffffce010b0be098, it_list = {le_next = 0xffffce010b0be098, le_prev = 0xffffffff80dff106 <itimer_callout>}, it_active = 192}},
   it_ops = 0xffffffff8138a470 <ptimer_itimer_ops>, it_time = {it_interval = {tv_sec = 0, tv_nsec = 10000000}, it_value = {tv_sec = 1746864040, tv_nsec = 736222027}}, it_clockid = 0, it_overruns = 0, it_dying = false}
 
 Let me know what further information you need!
  Thomas
 


Home | Main Index | Thread Index | Old Index