Current-Users archive

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

Re: current panic: kernel diagnostic assertion "it->it_time.it_interval.tv_sec >= 0" failed



On Mon, Dec 16, 2024 at 05:12:47PM +0000, Chavdar Ivanov wrote:
> On Mon, 16 Dec 2024 at 16:13, Thomas Klausner <wiz%netbsd.org@localhost> wrote:
> >
> > Hi!
> >
> > While running the Python 3.13.1 test suite (for the second time in the
> > last 24 hours, so not sure if it's even related; and the log seems
> > complete, so they were probably already done) on a NetBSD
> > 10.99.12/amd64 from 2024-12-10 I had a panic:
> >
> > panic: kernel diagnostic assertion "it->it_time.it_interval.tv_sec >= 0" failed: file "/usr/src/sys/kern/kern_time.c", line 862
> 
> 
> This is exactly what I reported on the 13th of October -
> https://mail-index.netbsd.org/current-users/2024/10/13/msg045720.html
> .

Thanks, so it's not just my machine.

It seems to be quite reproducible, I just ran the Python 3.13.1 test suite again and had the same panic:

panic: kernel diagnostic assertion "it->it_time.it_interval.tv_sec >= 0" failed: file "/usr/src/sys/kern/kern_time.c", line 862

The new backtrace is:

#3  0xffffffff80fea461 in kern_assert (fmt=fmt@entry=0xffffffff8141d1c8 "kernel %sassertion \"%s\" failed: file \"%s\", line %d ") at /disk/storage-202410/archive/foreign/src/sys/lib/libkern/kern_assert.c:51
#4  0xffffffff80df6042 in itimer_callout (arg=0xffff8604edd96040) at /disk/storage-202410/archive/foreign/src/sys/kern/kern_time.c:862
#5  0xffffffff80df8db9 in callout_softclock (v=<optimized out>) at /disk/storage-202410/archive/foreign/src/sys/kern/kern_timeout.c:872
#6  0xffffffff80de8bfe in softint_execute (s=2, l=0xffff8604d49b6800) at /disk/storage-202410/archive/foreign/src/sys/kern/kern_softint.c:599
#7  softint_dispatch (pinned=<optimized out>, s=2) at /disk/storage-202410/archive/foreign/src/sys/kern/kern_softint.c:848
#8  0xffffffff8023480c in Xsoftintr ()


I also found these probably relevant lines from the Python test output:

test_timerfd_TFD_TIMER_ABSTIME (test.test_os.TimerfdTests.test_timerfd_TFD_TIMER_ABSTIME) ... FAIL
test_timerfd_initval (test.test_os.TimerfdTests.test_timerfd_initval) ... FAIL
test_timerfd_interval (test.test_os.TimerfdTests.test_timerfd_interval) ... ok
test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) ...
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=0, initial=-1, interval=0) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=1, initial=-1, interval=0) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=3, initial=-1, interval=0) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=0, initial=1, interval=-1) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=1, initial=1, interval=-1) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=3, initial=1, interval=-1) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=0, initial=-1, interval=-1) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=1, initial=-1, interval=-1) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=3, initial=-1, interval=-1) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=0, initial=-0.1, interval=0) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=1, initial=-0.1, interval=0) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=3, initial=-0.1, interval=0) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=0, initial=1, interval=-0.1) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=1, initial=1, interval=-0.1) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=3, initial=1, interval=-0.1) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=0, initial=-0.1, interval=-0.1) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=1, initial=-0.1, interval=-0.1) ... FAIL
  test_timerfd_negative (test.test_os.TimerfdTests.test_timerfd_negative) (flags=3, initial=-0.1, interval=-0.1) ... FAIL
test_timerfd_non_blocking (test.test_os.TimerfdTests.test_timerfd_non_blocking) ... ok
test_timerfd_ns_TFD_TIMER_ABSTIME (test.test_os.TimerfdTests.test_timerfd_ns_TFD_TIMER_ABSTIME) ... FAIL
test_timerfd_ns_initval (test.test_os.TimerfdTests.test_timerfd_ns_initval) ... ok
test_timerfd_ns_interval (test.test_os.TimerfdTests.test_timerfd_ns_interval) ... ok
test_timerfd_ns_poll (test.test_os.TimerfdTests.test_timerfd_ns_poll) ... ok
test_timerfd_ns_select (test.test_os.TimerfdTests.test_timerfd_ns_select) ... FAIL
test_timerfd_poll (test.test_os.TimerfdTests.test_timerfd_poll) ... ok
test_timerfd_select (test.test_os.TimerfdTests.test_timerfd_select) ... FAIL

many of which complain about

AssertionError: OSError not raised

Any takers? :-)
 Thomas

> 
> >
> > These lines are:
> >
> >         /* Nonnegative interval guaranteed by itimerfix.  */
> >         KASSERT(it->it_time.it_interval.tv_sec >= 0);
> >         KASSERT(it->it_time.it_interval.tv_nsec >= 0);
> >
> > So either itimerfix didn't work or wasn't run or the machine had some
> > memory issues.
> >
> > Core dump available, backtrace is:
> >
> > #3  0xffffffff80fea461 in kern_assert (fmt=fmt@entry=0xffffffff8141d1c8 "kernel %sassertion \"%s\" failed: file \"%s\", line %d ") at /usr/src/sys/lib/libkern/kern_assert.c:51
> > #4  0xffffffff80df6042 in itimer_callout (arg=0xffff80f8c275de00) at /usr/src/sys/kern/kern_time.c:862
> > #5  0xffffffff80df8db9 in callout_softclock (v=<optimized out>) at /usr/src/sys/kern/kern_timeout.c:872
> > #6  0xffffffff80de8bfe in softint_execute (s=2, l=0xffff80f5e4f1e800) at /usr/src/sys/kern/kern_softint.c:599
> > #7  softint_dispatch (pinned=<optimized out>, s=2) at /usr/src/sys/kern/kern_softint.c:848
> > #8  0xffffffff8023480c in Xsoftintr ()
> >
> > Cheers,
> >  Thomas
> 
> 
> 
> -- 
> ----


Home | Main Index | Thread Index | Old Index