Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 07 Nov 2023 15:50:12 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 274954] Kernel with INVARARIANTS panic when drm module loaded
Message-ID:  <bug-274954-227@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D274954

            Bug ID: 274954
           Summary: Kernel with INVARARIANTS panic when drm module loaded
           Product: Base System
           Version: 15.0-CURRENT
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: kern
          Assignee: bugs@FreeBSD.org
          Reporter: oleg.nauman@gmail.com

Kernel with INVARIANTS panic when entering multiuser mode after sucessful
system boot. It happens when I boot CURRENT kernel with INVARIANTS and drm
module loaded ( drm-515-kmod-5.15.118_1 to be precise ). kernel and drm mod=
ule
are in sync.

-----------------------------

FreeBSD moonset.home 15.0-CURRENT FreeBSD 15.0-CURRENT #3 main-n266267-
e116e040f309: Sun Nov  5 10:00:51 EET 2023     root@moonset.home:/usr/obj/u=
sr/
src/amd64.amd64/sys/moonset  amd64

panic: sleepq_add: td 0xfffff8000203c000 to sleep on wchan 0xfffff800021d86=
48
with sleeping prohibited
...............
Reading symbols from /boot/kernel/kernel...
Reading symbols from /usr/lib/debug//boot/kernel/kernel.debug...

Unread portion of the kernel message buffer:
panic: malloc(M_WAITOK) with sleeping prohibited
cpuid =3D 0
time =3D 1699171621
.............
__curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:57
57              __asm("movq %%gs:%P1,%0" : "=3Dr" (td) : "n" (offsetof(stru=
ct
pcpu,
(kgdb) #0  __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:57
#1  doadump (textdump=3D<optimized out>)
    at /usr/src/sys/kern/kern_shutdown.c:405
#2  0xffffffff81e2ec53 in vt_kms_postswitch () from /boot/modules/drm.ko
#3  0xffffffff8043ad6e in vt_window_switch (vw=3D0xfffff800021d8640)
    at /usr/src/sys/dev/vt/vt_core.c:595
#4  0xffffffff804ec583 in kern_reboot (howto=3D4)
    at /usr/src/sys/kern/kern_shutdown.c:501
#5  0xffffffff804eccfa in vpanic (
    fmt=3D0xffffffff808263fb "malloc(M_WAITOK) with sleeping prohibited",
    ap=3Dap@entry=3D0xfffffe00ce259850) at /usr/src/sys/kern/kern_shutdown.=
c:970
#6  0xffffffff804ecb03 in panic (fmt=3D<unavailable>)
    at /usr/src/sys/kern/kern_shutdown.c:894
#7  0xffffffff804c8a04 in malloc_dbg (vap=3D<optimized out>,
    sizep=3D<optimized out>, mtp=3D<optimized out>, flags=3D<optimized out>)
    at /usr/src/sys/kern/kern_malloc.c:540
#8  0xffffffff804c885c in malloc (size=3D<optimized out>,
    mtp=3D0xffffffff81e931c0 <M_KMALLOC>, flags=3D<unavailable>)
    at /usr/src/sys/kern/kern_malloc.c:641
#9  0xffffffff81c5a750 in intel_atomic_state_alloc ()
   from /boot/modules/i915kms.ko
#10 0xffffffff81dfe404 in drm_client_modeset_commit_atomic ()
   from /boot/modules/drm.ko
#11 0xffffffff81dfe614 in drm_client_modeset_commit_locked ()
   from /boot/modules/drm.ko
#12 0xffffffff81dfe7a1 in drm_client_modeset_commit ()
   from /boot/modules/drm.ko
#13 0xffffffff81e41ab3 in drm_fb_helper_restore_fbdev_mode_unlocked ()
   from /boot/modules/drm.ko
#14 0xffffffff81e2ed91 in vt_kms_postswitch () from /boot/modules/drm.ko
#15 0xffffffff8043ac31 in vt_window_switch (vw=3D0xfffff80001d3a600,
    vw@entry=3D0xffffffff80a47178 <vt_conswindow>)
    at /usr/src/sys/dev/vt/vt_core.c:612
#16 0xffffffff8043be0f in vtterm_cngrab (tm=3D<unavailable>,
    tm@entry=3D<error reading variable: value is not available>)
    at /usr/src/sys/dev/vt/vt_core.c:1863
#17 0xffffffff804893f6 in cngrab () at /usr/src/sys/kern/kern_cons.c:385
#18 0xffffffff804ecc79 in vpanic (
    fmt=3D0xffffffff808799a9 "%s: td %p to sleep on wchan %p with sleeping
prohibited", ap=3Dap@entry=3D0xfffffe00ce259c20)
    at /usr/src/sys/kern/kern_shutdown.c:942
#19 0xffffffff804ecb03 in panic (fmt=3D<unavailable>)
    at /usr/src/sys/kern/kern_shutdown.c:894
#20 0xffffffff805465b3 in sleepq_add (wchan=3Dwchan@entry=3D0xfffff800021d8=
648,
    lock=3Dlock@entry=3D0xfffff80001823340,
    wmesg=3Dwmesg@entry=3D0xffffffff808b194e "tq_drain", flags=3D0,
    flags@entry=3D<unavailable>, queue=3Dqueue@entry=3D0)
    at /usr/src/sys/kern/subr_sleepqueue.c:326
#21 0xffffffff804f8efe in _sleep (ident=3Dident@entry=3D0xfffff800021d8648,
    lock=3Dlock@entry=3D0xfffff80001823340, priority=3Dpriority@entry=3D0,
    wmesg=3D0xffffffff808b194e "tq_drain", sbt=3Dsbt@entry=3D0, pr=3Dpr@ent=
ry=3D0,
    flags=3D256) at /usr/src/sys/kern/kern_synch.c:207
#22 0xffffffff8054cffb in TQ_SLEEP (tq=3D0xfffff80001823300,
    p=3D0xfffff800021d8648, wm=3D<optimized out>)
    at /usr/src/sys/kern/subr_taskqueue.c:124
#23 taskqueue_drain (queue=3D0xfffff80001823300, task=3D0xfffff800021d8648)
    at /usr/src/sys/kern/subr_taskqueue.c:614
#24 0xffffffff81e2ed35 in vt_kms_postswitch () from /boot/modules/drm.ko
#25 0xffffffff8043ac31 in vt_window_switch (vw=3D0xfffff800021d8648,
    vw@entry=3D0xfffff800038fb180) at /usr/src/sys/dev/vt/vt_core.c:612
#26 0xffffffff8043b3b2 in vt_late_window_switch (vw=3D0xfffff800038fb180)
    at /usr/src/sys/dev/vt/vt_core.c:468
#27 vt_proc_window_switch (vw=3D0xfffff800038fb180)
    at /usr/src/sys/dev/vt/vt_core.c:553
#28 0xffffffff8043e318 in vt_processkey (
    kbd=3D0xffffffff80cef898 <default_kbd>, vd=3D0xffffffff80a472c8 <vt_con=
sdev>,
    c=3D<optimized out>) at /usr/src/sys/dev/vt/vt_core.c:903
#29 vt_kbdevent (kbd=3D0xffffffff80cef898 <default_kbd>, event=3D<optimized=
 out>,
    arg=3D0xffffffff80a472c8 <vt_consdev>) at /usr/src/sys/dev/vt/vt_core.c=
:1018
#30 0xffffffff8078ffcf in atkbd_intr (kbd=3D0xffffffff80cef898 <default_kbd=
>,
    arg=3D<optimized out>) at /usr/src/sys/dev/atkbdc/atkbd.c:565
#31 0xffffffff804b1376 in intr_event_execute_handlers (ie=3D0xfffff800010ec=
e00,
    p=3D<optimized out>) at /usr/src/sys/kern/kern_intr.c:1205
#32 ithread_execute_handlers (ie=3D0xfffff800010ece00, p=3D<optimized out>)
    at /usr/src/sys/kern/kern_intr.c:1218
#33 ithread_loop (arg=3Darg@entry=3D0xfffff80001c5aea0)
    at /usr/src/sys/kern/kern_intr.c:1306
#34 0xffffffff804adae2 in fork_exit (
    callout=3D0xffffffff804b1120 <ithread_loop>, arg=3D0xfffff80001c5aea0,
    frame=3D0xfffffe00ce259f40) at /usr/src/sys/kern/kern_fork.c:1160
#35 <signal handler called>
#36 0x0000000000000b88 in ?? ()
Backtrace stopped: Cannot access memory at address 0xbc7
(kgdb)

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-274954-227>