Date: Wed, 16 Oct 2019 12:57:37 -0400 From: Neel Chauhan <neel@neelc.org> To: Mateusz Guzik <mjguzik@gmail.com> Cc: Evilham <contact@evilham.com>, FreeBSD Current <freebsd-current@freebsd.org>, owner-freebsd-current@freebsd.org Subject: Re: DRM-current-kmod is still a problem at r353339 Message-ID: <bb4f31fcb7f06059f1d9fe391b119661@neelc.org> In-Reply-To: <CAGudoHGoikyZudFSxYjypF8EL24BPxBTPQjAnCKTe%2Bvg3DJiWQ@mail.gmail.com> References: <c2566b4b-7b4b-78ba-b8b1-2a13e653ddd7@acm.org> <CAGudoHG_aAcqOfSi0GCW5-yw=6RcEXB0dz72mkgdJoz0guJMHA@mail.gmail.com> <7ca3b30a-81f6-f79d-1486-7fd29765646f@acm.org> <CAGudoHE755ig7KGuzq8uNY01K2Jcf-MKBjCp8kbpJAoiHdbQMA@mail.gmail.com> <99c89ca0-462c-f4c7-fa07-6f61e9d39d66@acm.org> <f2e7c4b4c236ee694f277d78479cb6ee@neelc.org> <CAGudoHGwmp=vNwOy2W22rjx_mQj1nkbdYzuLfayM7O0vn4keeA@mail.gmail.com> <bb951f83-6a50-48ce-8efa-b8fa92a9840e@yggdrasil.evilham.com> <CAGudoHGoikyZudFSxYjypF8EL24BPxBTPQjAnCKTe%2Bvg3DJiWQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
While drm-current-kmod worked for a little while, it broke with r353645. https://i.imgur.com/Q5nYZf2.jpg I'm using the same HP Spectre that I used earlier (where it worked and where it panicked). -Neel === https://www.neelc.org/ On 2019-10-13 10:37, Mateusz Guzik wrote: > On 10/13/19, Evilham <contact@evilham.com> wrote: >> Hello, >> >> I somehow had managed to mess up my build system and only >> yesterday got it back to compiling properly. >> > > So to be clear, there is an unrelated bug where it seems the module can > decide to abort loading and then it crashes in pseudofs. This can > happen > if there is a mismatch between the kernel and the module itself. > >> >> On ds., oct. 12 2019, Mateusz Guzik wrote: >> >>> Try this: >>> >>> https://people.freebsd.org/~mjg/pmap-fict-invl.diff >> >> >> I tested this patch on top of r353449 and a panic is still >> ocurring when the drm-kmod modules are loaded. >> >> This is on a Lenovo A485 Laptop, which is an AMD Ryzen processor >> and a Radeon Vega graphics. >> My last known working revision is r352987. >> >> >> Here are bits of the core dump, I hope they are useful, if more >> information is needed, please don't hesitate to ask. >> BTW: I usually compile GENERIC-NODEBUG, if that results in the >> dump being useless (sadly I can't tell), I can disable all the >> performance goodies and compile GENERIC :-). >> -- >> Evilham >> >> >> Fatal trap 12: page fault while in kernel mode >> cpuid = 2; apic id = 02 >> fault virtual address = 0xf8 >> fault code = supervisor read data, page not present >> instruction pointer = 0x20:0xffffffff80b1be61 >> stack pointer = 0x28:0xfffffe00dd81ccc0 >> frame pointer = 0x28:0xfffffe00dd81ccf0 >> 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 = 24022 (kldload) >> trap number = 12 >> panic: page fault >> cpuid = 2 >> time = 1570970502 >> KDB: stack backtrace: >> db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame >> 0xfffffe00dd81c920 >> vpanic() at vpanic+0x17e/frame 0xfffffe00dd81c980 >> panic() at panic+0x43/frame 0xfffffe00dd81c9e0 >> trap_pfault() at trap_pfault/frame 0xfffffe00dd81ca50 >> trap_pfault() at trap_pfault+0x4f/frame 0xfffffe00dd81cac0 >> trap() at trap+0x288/frame 0xfffffe00dd81cbf0 >> calltrap() at calltrap+0x8/frame 0xfffffe00dd81cbf0 >> --- trap 0xc, rip = 0xffffffff80b1be61, rsp = 0xfffffe00dd81ccc0, >> rbp = 0xfffffe00dd81ccf0 --- >> pfs_destroy() at pfs_destroy+0x11/frame 0xfffffe00dd81ccf0 >> pfs_uninit() at pfs_uninit+0x16/frame 0xfffffe00dd81cd10 >> vfs_modevent() at vfs_modevent+0x474/frame 0xfffffe00dd81cd50 >> module_register_init() at module_register_init+0xa4/frame >> 0xfffffe00dd81cd80 >> linker_load_module() at linker_load_module+0xb49/frame >> 0xfffffe00dd81d0a0 >> linker_load_dependencies() at linker_load_dependencies+0x18c/frame >> 0xfffffe00dd81d0f0 >> link_elf_load_file() at link_elf_load_file+0x1127/frame >> 0xfffffe00dd81d1b0 >> linker_load_module() at linker_load_module+0x89a/frame >> 0xfffffe00dd81d4d0 >> linker_load_dependencies() at linker_load_dependencies+0x18c/frame >> 0xfffffe00dd81d520 >> link_elf_load_file() at link_elf_load_file+0x1127/frame >> 0xfffffe00dd81d5e0 >> linker_load_module() at linker_load_module+0x89a/frame >> 0xfffffe00dd81d900 >> kern_kldload() at kern_kldload+0xbd/frame 0xfffffe00dd81d950 >> sys_kldload() at sys_kldload+0x5b/frame 0xfffffe00dd81d980 >> amd64_syscall() at amd64_syscall+0x3a3/frame 0xfffffe00dd81dab0 >> fast_syscall_common() at fast_syscall_common+0x101/frame >> 0xfffffe00dd81dab0 >> --- syscall (304, FreeBSD ELF64, sys_kldload), rip = 0x8002d1cda, >> rsp = 0x7fffffffd748, rbp = 0x7fffffffdcc0 --- >> KDB: enter: panic >> >> >> __curthread () at /freebsd/src/sys/amd64/include/pcpu_aux.h:55 >> 55 __asm("movq %%gs:%P1,%0" : "=r" (td) : "n" >> (offsetof(struct pcpu, >> (kgdb) #0 __curthread () at >> /freebsd/src/sys/amd64/include/pcpu_aux.h:55 >> #1 doadump (textdump=0) at >> /freebsd/src/sys/kern/kern_shutdown.c:392 >> #2 0xffffffff80496a7a in db_dump (dummy=<optimized out>, >> dummy2=<unavailable>, dummy3=<unavailable>, >> dummy4=<unavailable>) >> at /freebsd/src/sys/ddb/db_command.c:575 >> #3 0xffffffff8049683c in db_command (last_cmdp=<optimized out>, >> cmd_table=<optimized out>, dopager=1) >> at /freebsd/src/sys/ddb/db_command.c:482 >> #4 0xffffffff804965ad in db_command_loop () >> at /freebsd/src/sys/ddb/db_command.c:535 >> #5 0xffffffff80499858 in db_trap (type=<optimized out>, >> code=<optimized out>) >> at /freebsd/src/sys/ddb/db_main.c:252 >> #6 0xffffffff80c322a7 in kdb_trap (type=3, code=0, tf=<optimized >> out>) >> at /freebsd/src/sys/kern/subr_kdb.c:692 >> #7 0xffffffff8105d925 in trap (frame=0xfffffe00dd81c850) >> at /freebsd/src/sys/amd64/amd64/trap.c:585 >> #8 <signal handler called> >> #9 kdb_enter (why=0xffffffff811dee7e "panic", msg=<optimized >> out>) >> at /freebsd/src/sys/kern/subr_kdb.c:479 >> #10 0xffffffff80be377a in vpanic (fmt=<optimized out>, >> ap=<optimized out>) >> at /freebsd/src/sys/kern/kern_shutdown.c:897 >> #11 0xffffffff80be35d3 in panic ( >> fmt=0xffffffff818e4c18 <vt_conswindow+16> >> "\357\327\037\201\377\377\377\377") at >> /freebsd/src/sys/kern/kern_shutdown.c:835 >> #12 0xffffffff8105ddb0 in trap_fatal (frame=0xfffffe00dd81cc00, >> eva=248) >> at /freebsd/src/sys/amd64/amd64/trap.c:925 >> #13 0xffffffff8105ddff in trap_pfault (frame=0xfffffe00dd81cc00, >> usermode=<optimized out>, signo=<optimized out>, >> ucode=<optimized out>) >> at /freebsd/src/sys/amd64/amd64/trap.c:743 >> #14 0xffffffff8105d458 in trap (frame=0xfffffe00dd81cc00) >> at /freebsd/src/sys/amd64/amd64/trap.c:407 >> #15 <signal handler called> >> #16 pfs_destroy (pn=0x0) at >> /freebsd/src/sys/fs/pseudofs/pseudofs.c:324 >> #17 0xffffffff80b1ca96 in pfs_uninit ( >> pi=0xffffffff8360f120 <anon_inodefs_info>, >> vfc=0xffffffff8360f010 <anon_inodefs_vfsconf>) >> at /freebsd/src/sys/fs/pseudofs/pseudofs.c:473 >> #18 0xffffffff80caddd4 in vfs_register ( >> vfc=0xffffffff8360f010 <anon_inodefs_vfsconf>) >> at /freebsd/src/sys/kern/vfs_init.c:497 >> #19 vfs_modevent (mod=<optimized out>, type=<optimized out>, >> data=0xffffffff8360f010 <anon_inodefs_vfsconf>) >> at /freebsd/src/sys/kern/vfs_init.c:582 >> #20 0xffffffff80bc0b24 in module_register_init ( >> arg=0xffffffff8360eff8 <anon_inodefs_mod>) >> at /freebsd/src/sys/kern/kern_module.c:123 >> #21 0xffffffff80bb26b9 in linker_file_sysinit (lf=<optimized out>) >> at /freebsd/src/sys/kern/kern_linker.c:236 >> #22 linker_load_file (filename=<optimized out>, result=<optimized >> out>) >> at /freebsd/src/sys/kern/kern_linker.c:462 >> #23 linker_load_module (kldname=<optimized out>, >> modname=0xffffffff835d4c80 "linuxkpi_gplv2", parent=<optimized >> out>, >> verinfo=<optimized out>, lfpp=<optimized out>) >> at /freebsd/src/sys/kern/kern_linker.c:2110 >> #24 0xffffffff80bb4eec in linker_load_dependencies >> (lf=0xfffff800060dcc00) >> at /freebsd/src/sys/kern/kern_linker.c:2200 >> #25 0xffffffff810d6027 in link_elf_load_file (cls=<optimized out>, >> filename=0xfffff8000645bcc0 "/boot/modules/drm.ko", >> result=0xfffffe00dd81d358) at >> /freebsd/src/sys/kern/link_elf_obj.c:1004 >> #26 0xffffffff80bb240a in LINKER_LOAD_FILE ( >> cls=0xffffffff81972e90 <link_elf_class>, filename=<optimized >> out>, >> result=<optimized out>) at ./linker_if.h:180 >> #27 linker_load_file (filename=<optimized out>, result=<optimized >> out>) >> at /freebsd/src/sys/kern/kern_linker.c:447 >> #28 linker_load_module (kldname=<optimized out>, >> modname=0xffffffff83542bc4 "drmn", parent=<optimized out>, >> verinfo=<optimized out>, lfpp=<optimized out>) >> at /freebsd/src/sys/kern/kern_linker.c:2110 >> #29 0xffffffff80bb4eec in linker_load_dependencies >> (lf=0xfffff800060db200) >> at /freebsd/src/sys/kern/kern_linker.c:2200 >> #30 0xffffffff810d6027 in link_elf_load_file (cls=<optimized out>, >> filename=0xfffff8000503ed80 "/boot/modules/amdgpu.ko", >> result=0xfffffe00dd81d788) at >> /freebsd/src/sys/kern/link_elf_obj.c:1004 >> #31 0xffffffff80bb240a in LINKER_LOAD_FILE ( >> cls=0xffffffff81972e90 <link_elf_class>, filename=<optimized >> out>, >> result=<optimized out>) at ./linker_if.h:180 >> #32 linker_load_file (filename=<optimized out>, result=<optimized >> out>) >> at /freebsd/src/sys/kern/kern_linker.c:447 >> #33 linker_load_module (kldname=<optimized out>, >> modname=0xfffff8000612b000 "amdgpu", parent=<optimized out>, >> verinfo=<optimized out>, lfpp=<optimized out>) >> at /freebsd/src/sys/kern/kern_linker.c:2110 >> #34 0xffffffff80bb3f2d in kern_kldload (td=<optimized out>, >> file=<optimized out>, fileid=0xfffffe00dd81d964) >> at /freebsd/src/sys/kern/kern_linker.c:1089 >> #35 0xffffffff80bb406b in sys_kldload (td=0xfffff800125d8000, >> uap=<optimized out>) at >> /freebsd/src/sys/kern/kern_linker.c:1115 >> #36 0xffffffff8105e973 in syscallenter (td=0xfffff800125d8000) >> at /freebsd/src/sys/amd64/amd64/../../kern/subr_syscall.c:144 >> #37 amd64_syscall (td=0xfffff800125d8000, traced=0) >> at /freebsd/src/sys/amd64/amd64/trap.c:1162 >> #38 <signal handler called> >> #39 0x00000008002d1cda in ?? () >> Backtrace stopped: Cannot access memory at address 0x7fffffffd748 >> (kgdb) >>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bb4f31fcb7f06059f1d9fe391b119661>