freebsd / drm-kmod

drm driver for FreeBSD
148 stars 68 forks source link

kernel panic/Hyprland crash at start since 0.41.1 #308

Closed Canvis-Me closed 2 weeks ago

Canvis-Me commented 2 weeks ago

Describe the bug Since the port hyprland updated to 0.41.1, I can't run it at start. The situation is the same with 0.41.1_1 and 0.41.1_2. Other ports are up to date.

FreeBSD version FreeBSD 14.1-RELEASE FreeBSD 14.1-RELEASE releng/14.1-n267679-10e31f0946d8 GENERIC amd64 1401000 1401000

PCI Info

pciconf -lv vgapci0@pci0:11:0:0: class=0x030000 rev=0xa1 hdr=0x00 vendor=0x10de device=0x2489 subvendor=0x7377 subdevice=0x140a vendor = 'NVIDIA Corporation' device = 'GA104 [GeForce RTX 3060 Ti Lite Hash Rate]' class = display subclass = VGA hdac0@pci0:11:0:1: class=0x040300 rev=0xa1 hdr=0x00 vendor=0x10de device=0x228b subvendor=0x7377 subdevice=0x140a vendor = 'NVIDIA Corporation' device = 'GA104 High Definition Audio Controller' class = multimedia subclass = HDA

DRM KMOD version drm-515-kmod 5.15.160 nvidia-drm-515-kmod 550.54.14_1 nvidia-drm-kmod 550.54.14

To Reproduce Steps to reproduce the behavior:

After logging in TTY and entering Hyprland, the screen seems to power off(lose video info) and the machine restart.

Additional context The hyprland conf file is hyprland.conf.txt

The kernel debug info is

kgdb /boot/kernel/kernel /var/crash/vmcore.0 GNU gdb (GDB) 14.1 [GDB v14.1 for FreeBSD] Copyright (C) 2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-portbld-freebsd14.1". Type "show configuration" for configuration details. For bug reporting instructions, please see: . Find the GDB manual and other documentation resources online at: . For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from /boot/kernel/kernel... Reading symbols from /usr/lib/debug//boot/kernel/kernel.debug... Unread portion of the kernel message buffer: Fatal trap 9: general protection fault while in kernel mode cpuid = 14; apic id = 12 instruction pointer = 0x20:0xffffffff806a3dd4 stack pointer = 0x0:0xfffffe01929dbaa0 frame pointer = 0x0:0xfffffe01929dbaa0 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 25723 (Hyprland) rdi: 75e3ba3d79a3ba51 rsi: 0000000000000010 rdx: 0000000000000400 rcx: 0000000000000002 r8: fffffe01929dbc00 r9: fffffe01929dbc18 rax: 0000000000000000 rbx: fffffe00054a1b80 rbp: fffffe01929dbaa0 r10: 000000811d38afff r11: 000000811d38afff r12: 75e3ba3d79a3ba51 r13: 0000000000000001 r14: 0000000000000010 r15: 75e3ba3d79a3ba39 trap number = 9 panic: general protection fault cpuid = 14 time = 1718473936 KDB: stack backtrace: #0 0xffffffff806f636d at kdb_backtrace+0x5d #1 0xffffffff806a90d1 at vpanic+0x131 #2 0xffffffff806a8f93 at panic+0x43 #3 0xffffffff80a6011b at trap_fatal+0x40b #4 0xffffffff80a385d8 at calltrap+0x8 #5 0xffffffff809d1fdd at vm_page_busy_acquire+0x8d #6 0xffffffff8090ec41 at lkpi_vmf_insert_pfn_prot_locked+0xb1 #7 0xffffffff828889d5 at __nv_drm_gem_nvkms_handle_vma_fault+0x75 #8 0xffffffff80908ea2 at linux_cdev_pager_populate+0x122 #9 0xffffffff809bba67 at vm_fault_allocate+0x397 #10 0xffffffff809ba456 at vm_fault+0x376 #11 0xffffffff809b9fcd at vm_fault_trap+0x4d #12 0xffffffff80a602de at trap_pfault+0x1be #13 0xffffffff80a5f90b at trap+0x4ab #14 0xffffffff80a385d8 at calltrap+0x8 Uptime: 2m23s Dumping 1439 out of 32647 MB:..2%..11%..21%..31%..41%..51%..61%..71%..81%..91% Reading symbols from /boot/kernel/zfs.ko... Reading symbols from /usr/lib/debug//boot/kernel/zfs.ko.debug... Reading symbols from /boot/kernel/xdr.ko... Reading symbols from /usr/lib/debug//boot/kernel/xdr.ko.debug... Reading symbols from /boot/modules/if_re.ko... (No debugging symbols found in /boot/modules/if_re.ko) Reading symbols from /boot/kernel/fusefs.ko... Reading symbols from /usr/lib/debug//boot/kernel/fusefs.ko.debug... Reading symbols from /boot/kernel/opensolaris.ko... Reading symbols from /usr/lib/debug//boot/kernel/opensolaris.ko.debug... Reading symbols from /boot/kernel/fdescfs.ko... Reading symbols from /usr/lib/debug//boot/kernel/fdescfs.ko.debug... Reading symbols from /boot/kernel/amdtemp.ko... Reading symbols from /usr/lib/debug//boot/kernel/amdtemp.ko.debug... Reading symbols from /boot/kernel/amdsmn.ko... Reading symbols from /usr/lib/debug//boot/kernel/amdsmn.ko.debug... Reading symbols from /boot/modules/nvidia-modeset.ko... (No debugging symbols found in /boot/modules/nvidia-modeset.ko) Reading symbols from /boot/modules/nvidia.ko... (No debugging symbols found in /boot/modules/nvidia.ko) Reading symbols from /boot/kernel/linux.ko... Reading symbols from /usr/lib/debug//boot/kernel/linux.ko.debug... Reading symbols from /boot/kernel/linux_common.ko... Reading symbols from /usr/lib/debug//boot/kernel/linux_common.ko.debug... Reading symbols from /boot/modules/nvidia-drm.ko... (No debugging symbols found in /boot/modules/nvidia-drm.ko) Reading symbols from /boot/modules/drm.ko... (No debugging symbols found in /boot/modules/drm.ko) Reading symbols from /boot/kernel/iic.ko... Reading symbols from /usr/lib/debug//boot/kernel/iic.ko.debug... Reading symbols from /boot/kernel/linuxkpi_hdmi.ko... Reading symbols from /usr/lib/debug//boot/kernel/linuxkpi_hdmi.ko.debug... Reading symbols from /boot/modules/dmabuf.ko... (No debugging symbols found in /boot/modules/dmabuf.ko) Reading symbols from /boot/kernel/lindebugfs.ko... Reading symbols from /usr/lib/debug//boot/kernel/lindebugfs.ko.debug... Reading symbols from /boot/kernel/acpi_wmi.ko... Reading symbols from /usr/lib/debug//boot/kernel/acpi_wmi.ko.debug... Reading symbols from /boot/kernel/ahci.ko... Reading symbols from /usr/lib/debug//boot/kernel/ahci.ko.debug... Reading symbols from /boot/kernel/if_iwlwifi.ko... Reading symbols from /usr/lib/debug//boot/kernel/if_iwlwifi.ko.debug... Reading symbols from /boot/kernel/intpm.ko... Reading symbols from /usr/lib/debug//boot/kernel/intpm.ko.debug... Reading symbols from /boot/kernel/smbus.ko... Reading symbols from /usr/lib/debug//boot/kernel/smbus.ko.debug... Reading symbols from /boot/kernel/uhid.ko... --Type for more, q to quit, c to continue without paging-- Reading symbols from /usr/lib/debug//boot/kernel/uhid.ko.debug... Reading symbols from /boot/kernel/usbhid.ko... Reading symbols from /usr/lib/debug//boot/kernel/usbhid.ko.debug... Reading symbols from /boot/kernel/hidbus.ko... Reading symbols from /usr/lib/debug//boot/kernel/hidbus.ko.debug... Reading symbols from /boot/kernel/wmt.ko... Reading symbols from /usr/lib/debug//boot/kernel/wmt.ko.debug... Reading symbols from /boot/kernel/ums.ko... Reading symbols from /usr/lib/debug//boot/kernel/ums.ko.debug... Reading symbols from /boot/kernel/ng_ubt.ko... Reading symbols from /usr/lib/debug//boot/kernel/ng_ubt.ko.debug... Reading symbols from /boot/kernel/netgraph.ko... Reading symbols from /usr/lib/debug//boot/kernel/netgraph.ko.debug... Reading symbols from /boot/kernel/ng_hci.ko... Reading symbols from /usr/lib/debug//boot/kernel/ng_hci.ko.debug... Reading symbols from /boot/kernel/ng_bluetooth.ko... Reading symbols from /usr/lib/debug//boot/kernel/ng_bluetooth.ko.debug... Reading symbols from /boot/kernel/ng_l2cap.ko... Reading symbols from /usr/lib/debug//boot/kernel/ng_l2cap.ko.debug... Reading symbols from /boot/kernel/ng_btsocket.ko... Reading symbols from /usr/lib/debug//boot/kernel/ng_btsocket.ko.debug... Reading symbols from /boot/kernel/ng_socket.ko... Reading symbols from /usr/lib/debug//boot/kernel/ng_socket.ko.debug... Reading symbols from /boot/kernel/vmm.ko... Reading symbols from /usr/lib/debug//boot/kernel/vmm.ko.debug... Reading symbols from /boot/kernel/nmdm.ko... Reading symbols from /usr/lib/debug//boot/kernel/nmdm.ko.debug... Reading symbols from /boot/kernel/if_bridge.ko... Reading symbols from /usr/lib/debug//boot/kernel/if_bridge.ko.debug... Reading symbols from /boot/kernel/bridgestp.ko... Reading symbols from /usr/lib/debug//boot/kernel/bridgestp.ko.debug... __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:57 57 __asm("movq %%gs:%P1,%0" : "=r" (td) : "n" (offsetof(struct pcpu, (kgdb) (kgdb) c The program is not being run. (kgdb) list *0xffffffff806a3dd4 0xffffffff806a3dd4 is in _rw_wowned (/usr/src/sys/kern/kern_rwlock.c:268). 263 264 int 265 _rw_wowned(const volatile uintptr_t *c) 266 { 267 268 return (rw_wowner(rwlock2rw(c)) == curthread); 269 } 270 271 void 272 _rw_wlock_cookie(volatile uintptr_t *c, const char *file, int line) (kgdb) backtrace #0 __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:57 #1 doadump (textdump=) at /usr/src/sys/kern/kern_shutdown.c:405 #2 0xffffffff806a8c67 in kern_reboot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:523 #3 0xffffffff806a913e in vpanic (fmt=0xffffffff80ad1d54 "%s", ap=ap@entry=0xfffffe01929db950) at /usr/src/sys/kern/kern_shutdown.c:967 #4 0xffffffff806a8f93 in panic (fmt=) at /usr/src/sys/kern/kern_shutdown.c:891 #5 0xffffffff80a6011b in trap_fatal (frame=0xfffffe01929db9e0, eva=0) at /usr/src/sys/amd64/amd64/trap.c:952 #6 #7 _rw_wowned (c=c@entry=0x75e3ba3d79a3ba51) at /usr/src/sys/kern/kern_rwlock.c:268 #8 0xffffffff809d1fdd in vm_page_busy_acquire (m=0xfffffe00054a1b80, allocflags=allocflags@entry=16) at /usr/src/sys/vm/vm_page.c:890 #9 0xffffffff8090ec41 in lkpi_vmf_insert_pfn_prot_locked (vma=0xfffff803aa7c7d00, addr=, pfn=, prot=27) at /usr/src/sys/compat/linuxkpi/common/src/linux_page.c:314 #10 0xffffffff828889d5 in __nv_drm_gem_nvkms_handle_vma_fault () from /boot/modules/nvidia-drm.ko #11 0xffffffff80908ea2 in linux_cdev_pager_populate (vm_obj=0xfffff803aa7c7d00, pidx=, fault_type=, max_prot=, first=0xfffffe01929dbc00, last=0xfffffe01929dbc18) at /usr/src/sys/compat/linuxkpi/common/src/linux_compat.c:516 #12 0xffffffff809bba67 in vm_pager_populate (object=0x75e3ba3d79a3ba51, object@entry=0xfffffe01929dbb80, pidx=16, fault_type=1024, first=0xfffffe01929dbc00, last=0xfffffe01929dbc18, max_prot=) at /usr/src/sys/vm/vm_pager.h:187 #13 vm_fault_populate (fs=0xfffffe01929dbca0) at /usr/src/sys/vm/vm_fault.c:515 #14 vm_fault_allocate (fs=fs@entry=0xfffffe01929dbca0) at /usr/src/sys/vm/vm_fault.c:1240 #15 0xffffffff809ba456 in vm_fault_object (fs=0xfffffe01929dbca0, behindp=0xfffffe01929dbc94, aheadp=0xfffffe01929dbc98) at /usr/src/sys/vm/vm_fault.c:1504 #16 vm_fault (map=, vaddr=36335472640, fault_type=2 '\002', fault_flags=, m_hold=m_hold@entry=0x0) at /usr/src/sys/vm/vm_fault.c:1638 #17 0xffffffff809b9fcd in vm_fault_trap (map=, vaddr=, fault_type=, fault_flags=fault_flags@entry=0, signo=0xfffffe01929dbf00, ucode=0xfffffe01929dbf04) at /usr/src/sys/vm/vm_fault.c:712 #18 0xffffffff80a602de in trap_pfault (frame=frame@entry=0xfffffe01929dbf40, usermode=true, signo=0xfffffe01929dbc00, signo@entry=0xfffffe01929dbf00, ucode=0xfffffe01929dbc18, ucode@entry=0xfffffe01929dbf04) at /usr/src/sys/amd64/amd64/trap.c:845 #19 0xffffffff80a5f90b in trap (frame=0xfffffe01929dbf40) at /usr/src/sys/amd64/amd64/trap.c:384 #20 #21 0x0000000834f3b33a in ?? () Backtrace stopped: Cannot access memory at address 0x82157cfe8 (kgdb) q