Current-Users archive

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

9.99.40: panic: kernel diagnostic assertion "ci->ci_biglock_count == 0" failed



During a bulk build (in rust AFAICT), I got a panic with
panic: kernel diagnostic assertion "ci->ci_biglock_count == 0" failed: file "/usr/src/sys/sys/userret.h", line 88

That's this one:

static __inline void
mi_userret(struct lwp *l)
{
        struct cpu_info *ci;

        KPREEMPT_DISABLE(l);
        ci = l->l_cpu;
        KASSERT(l->l_blcnt == 0);
        KASSERT(ci->ci_biglock_count == 0);



The backtrace in the crash dump is not very helpful:

(gdb) bt
#0  0xffffffff80224315 in cpu_reboot (howto=howto@entry=260, bootstr=bootstr@entry=0x0) at /usr/src/sys/arch/amd64/amd64/machdep.c:720
#1  0xffffffff809f5ec3 in kern_reboot (howto=howto@entry=260, bootstr=bootstr@entry=0x0) at /usr/src/sys/kern/kern_reboot.c:61
#2  0xffffffff80a37109 in vpanic (fmt=0xffffffff8135e980 "kernel %sassertion \"%s\" failed: file \"%s\", line %d ", ap=ap@entry=0xffffad0928973f48)
    at /usr/src/sys/kern/subr_prf.c:336
#3  0xffffffff80e7b0b3 in kern_assert (fmt=fmt@entry=0xffffffff8135e980 "kernel %sassertion \"%s\" failed: file \"%s\", line %d ")
    at /usr/src/sys/lib/libkern/kern_assert.c:51
#4  0xffffffff802568ce in mi_userret (l=0xffffcfc320ca9c00) at /usr/src/sys/sys/userret.h:91
#5  userret (l=0xffffcfc320ca9c00) at ./machine/userret.h:81
#6  syscall (frame=<optimized out>) at /usr/src/sys/arch/x86/x86/syscall.c:166
#7  0xffffffff802096ad in handle_syscall ()

 Thomas



Home | Main Index | Thread Index | Old Index