[Bug 261166] graphics/drm-devel-kmod graphics/drm-current-kmod kernel panics: mi_switch: switch in a critical section
Date: Thu, 13 Jan 2022 10:08:40 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=261166 --- Comment #4 from Graham Perrin <grahamperrin@gmail.com> --- Comment on attachment 230979 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=230979 core.txt.4 panic with drm-current-kmod Dump header from device: /dev/ada0p2 Architecture: amd64 Architecture Version: 2 Dump Length: 3640209408 Blocksize: 512 Compression: none Dumptime: 2022-01-13 09:39:25 +0000 Hostname: mowa219-gjp4-8570p-freebsd Magic: FreeBSD Kernel Dump Version String: FreeBSD 14.0-CURRENT #15 main-n252381-75d20a5e386: Wed Jan 12 04:39:40 GMT 2022 root@mowa219-gjp4-8570p-freebsd:/usr/obj/usr/src/amd64.amd64/sys/GENERIC Panic String: mi_switch: switch in a critical section Dump Parity: 383973225 Bounds: 4 Dump Status: good info.4 (END) ---- … Unread portion of the kernel message buffer: panic: mi_switch: switch in a critical section cpuid = 0 time = 1642066765 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe0196917390 vpanic() at vpanic+0x17f/frame 0xfffffe01969173e0 panic() at panic+0x43/frame 0xfffffe0196917440 mi_switch() at mi_switch+0x19a/frame 0xfffffe0196917460 __mtx_lock_sleep() at __mtx_lock_sleep+0x1d9/frame 0xfffffe01969174f0 __mtx_lock_flags() at __mtx_lock_flags+0xe5/frame 0xfffffe0196917540 linux_wake_up() at linux_wake_up+0x38/frame 0xfffffe0196917590 radeon_fence_is_signaled() at radeon_fence_is_signaled+0x9b/frame 0xfffffe01969175e0 dma_resv_add_shared_fence() at dma_resv_add_shared_fence+0x9a/frame 0xfffffe0196917630 ttm_eu_fence_buffer_objects() at ttm_eu_fence_buffer_objects+0x79/frame 0xfffffe0196917670 radeon_cs_parser_fini() at radeon_cs_parser_fini+0x52/frame 0xfffffe01969176a0 radeon_cs_ioctl() at radeon_cs_ioctl+0x788/frame 0xfffffe0196917b20 drm_ioctl_kernel() at drm_ioctl_kernel+0xc7/frame 0xfffffe0196917b70 drm_ioctl() at drm_ioctl+0x2bf/frame 0xfffffe0196917c60 linux_file_ioctl() at linux_file_ioctl+0x30a/frame 0xfffffe0196917cc0 kern_ioctl() at kern_ioctl+0x202/frame 0xfffffe0196917d30 sys_ioctl() at sys_ioctl+0x126/frame 0xfffffe0196917e00 amd64_syscall() at amd64_syscall+0x12e/frame 0xfffffe0196917f30 fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe0196917f30 --- syscall (54, FreeBSD ELF64, sys_ioctl), rip = 0x38e29d14301a, rsp = 0x1d3eec8, rbp = 0x1d3eef0 --- KDB: enter: panic Uptime: 8h54m14s (ada0:ahcich0:0:0:0): spin-down Dumping 3471 out of 16265 MB:..1%..11%..21%..31%..41%..51%..61%..71%..81%..91% __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:55 55 __asm("movq %%gs:%P1,%0" : "=r" (td) : "n" (offsetof(struct pcpu, (kgdb) #0 __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:55 #1 doadump (textdump=textdump@entry=1) at /usr/src/sys/kern/kern_shutdown.c:399 #2 0xffffffff80c00ba4 in kern_reboot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:487 #3 0xffffffff80c0100e in vpanic ( fmt=0xffffffff811ac565 "mi_switch: switch in a critical section", ap=<optimized out>) at /usr/src/sys/kern/kern_shutdown.c:920 #4 0xffffffff80c00d63 in panic (fmt=<unavailable>) at /usr/src/sys/kern/kern_shutdown.c:844 #5 0xffffffff80c0df5a in mi_switch (flags=flags@entry=259) at /usr/src/sys/kern/kern_synch.c:503 #6 0xffffffff80c67eea in turnstile_wait (ts=ts@entry=0xfffff8020abcbc00, owner=owner@entry=0xfffffe018636d000, queue=<optimized out>, queue@entry=0) at /usr/src/sys/kern/subr_turnstile.c:817 #7 0xffffffff80bdc659 in __mtx_lock_sleep (c=c@entry=0xfffffe01224049b0, v=<optimized out>, opts=<optimized out>, opts@entry=0, file=<optimized out>, file@entry=0xffffffff81284276 "/usr/src/sys/compat/linuxkpi/common/src/linux_schedule.c", line=line@entry=207) at /usr/src/sys/kern/kern_mutex.c:668 #8 0xffffffff80bdc405 in __mtx_lock_flags (c=0xfffffe01224049b0, opts=<unavailable>, file=0xffffffff81284276 "/usr/src/sys/compat/linuxkpi/common/src/linux_schedule.c", line=207) at /usr/src/sys/kern/kern_mutex.c:284 #9 0xffffffff80e7a028 in linux_wake_up (wqh=0xfffffe0122404998, state=3, nr=0, locked=false) at /usr/src/sys/compat/linuxkpi/common/src/linux_schedule.c:207 #10 0xffffffff839434fb in radeon_fence_is_signaled () from /boot/modules/radeonkms.ko #11 0xffffffff83a8254a in dma_resv_add_shared_fence () from /boot/modules/linuxkpi_gplv2.ko #12 0xffffffff83a90f49 in ttm_eu_fence_buffer_objects () from /boot/modules/ttm.ko #13 0xffffffff83935e82 in radeon_cs_parser_fini () from /boot/modules/radeonkms.ko #14 0xffffffff83935c08 in radeon_cs_ioctl () from /boot/modules/radeonkms.ko #15 0xffffffff83a282d7 in drm_ioctl_kernel () from /boot/modules/drm.ko #16 0xffffffff83a2868f in drm_ioctl () from /boot/modules/drm.ko #17 0xffffffff80e6b7da in linux_file_ioctl_sub (fp=0x1d3024, filp=0x1, fop=<optimized out>, cmd=<optimized out>, data=<optimized out>, td=<optimized out>) at /usr/src/sys/compat/linuxkpi/common/src/linux_compat.c:1024 #18 linux_file_ioctl (fp=0x1d3024, fp@entry=<error reading variable: value is not available>, cmd=<unavailable>, cmd@entry=<error reading variable: value is not available>, data=<unavailable>, data@entry=<error reading variable: value is not available>, cred=<optimized out>, cred@entry=<error reading variable: value is not available>, td=0x0, td@entry=<error reading variable: value is not available>) at /usr/src/sys/compat/linuxkpi/common/src/linux_compat.c:1648 #19 0xffffffff80c77482 in fo_ioctl (fp=<optimized out>, com=3223348326, data=<unavailable>, active_cred=<unavailable>, td=0xfffffe0196b793a0) at /usr/src/sys/sys/file.h:364 #20 kern_ioctl (td=<optimized out>, td@entry=0xfffffe0196b793a0, fd=<optimized out>, com=com@entry=3223348326, data=<unavailable>, data@entry=0xfffffe0196917d50 "\003") at /usr/src/sys/kern/sys_generic.c:803 #21 0xffffffff80c771d6 in sys_ioctl (td=0xfffffe0196b793a0, td@entry=<error reading variable: value is not available>, uap=0xfffffe0196b79790, uap@entry=<error reading variable: value is not available>) at /usr/src/sys/kern/sys_generic.c:711 #22 0xffffffff810c93be in syscallenter (td=<optimized out>) at /usr/src/sys/amd64/amd64/../../kern/subr_syscall.c:189 #23 amd64_syscall (td=0xfffffe0196b793a0, traced=0) at /usr/src/sys/amd64/amd64/trap.c:1191 #24 <signal handler called> #25 0x000038e29d14301a in ?? () Backtrace stopped: Cannot access memory at address 0x1d3eec8 (kgdb) … -- You are receiving this mail because: You are the assignee for the bug.