Crash with radeonkms

Anindya Mukherjee anindya49 at hotmail.com
Thu Jan 12 10:08:46 UTC 2017


I am trying to run X compiled the drm-next and xserver-next-udev branches on a machine with a Radeon 2400XT card. The startx command results in an instant crash. Here is some info from a kgdb run:

GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "amd64-marcel-freebsd"...

Unread portion of the kernel message buffer:
trap number             = 9
panic: general protection fault
cpuid = 3
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe02325b3fd0
vpanic() at vpanic+0x186/frame 0xfffffe02325b4050
panic() at panic+0x43/frame 0xfffffe02325b40b0
trap_fatal() at trap_fatal+0x322/frame 0xfffffe02325b4100
trap() at trap+0x714/frame 0xfffffe02325b42c0
calltrap() at calltrap+0x8/frame 0xfffffe02325b42c0
--- trap 0x9, rip = 0xffffffff80994524, rsp = 0xfffffe02325b4390, rbp = 0xfffffe02325b43b0 ---
pfs_destroy() at pfs_destroy+0x34/frame 0xfffffe02325b43b0
linsysfs_destroy_class_dir() at linsysfs_destroy_class_dir+0x17/frame 0xfffffe02325b43d0
backlight_class_exit() at backlight_class_exit+0x1b/frame 0xfffffe02325b43f0
_module_run() at _module_run+0x9b/frame 0xfffffe02325b4430
linker_file_unload() at linker_file_unload+0x45f/frame 0xfffffe02325b4490
linker_file_unload() at linker_file_unload+0x603/frame 0xfffffe02325b44f0
linker_file_unload() at linker_file_unload+0x603/frame 0xfffffe02325b4550
link_elf_load_file() at link_elf_load_file+0x44a/frame 0xfffffe02325b46f0
linker_load_module() at linker_load_module+0x9cf/frame 0xfffffe02325b4a00
kern_kldload() at kern_kldload+0xa7/frame 0xfffffe02325b4a40
sys_kldload() at sys_kldload+0x5b/frame 0xfffffe02325b4a70
amd64_syscall() at amd64_syscall+0x2f9/frame 0xfffffe02325b4bf0
Xfast_syscall() at Xfast_syscall+0xfb/frame 0xfffffe02325b4bf0
--- syscall (304, FreeBSD ELF64, sys_kldload), rip = 0x8023f250a, rsp = 0x7fffffffe9f8, rbp = 0x7fffffffea60 ---
Uptime: 51s
Dumping 444 out of 8030 MB:..4%..11%..22%..33%..44%..51%..62%..72%..83%..94%

Reading symbols from /boot/kernel/ums.ko...Reading symbols from /usr/lib/debug//boot/kernel/ums.ko.debug...done.
done.
Loaded symbols for /boot/kernel/ums.ko
Reading symbols from /boot/kernel/uhid.ko...Reading symbols from /usr/lib/debug//boot/kernel/uhid.ko.debug...done.
done.
Loaded symbols for /boot/kernel/uhid.ko
Reading symbols from /boot/kernel/linuxkpi.ko...Reading symbols from /usr/lib/debug//boot/kernel/linuxkpi.ko.debug...done.
done.
Loaded symbols for /boot/kernel/linuxkpi.ko
Reading symbols from /boot/kernel/linux_common.ko...Reading symbols from /usr/lib/debug//boot/kernel/linux_common.ko.debug...done.
done.
Loaded symbols for /boot/kernel/linux_common.ko
#0  doadump (textdump=1) at pcpu.h:222
222             __asm("movq %%gs:%1,%0" : "=r" (td)
(kgdb) bt
#0  doadump (textdump=1) at pcpu.h:222
#1  0xffffffff80a4c545 in kern_reboot (howto=<value optimized out>) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/kern/kern_shutdown.c:386
#2  0xffffffff80a4cb20 in vpanic (fmt=<value optimized out>, ap=<value optimized out>) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/kern/kern_shutdown.c:787
#3  0xffffffff80a4cb63 in panic (fmt=<value optimized out>) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/kern/kern_shutdown.c:710
#4  0xffffffff80eba2f2 in trap_fatal (frame=0xfffffe02325b42d0, eva=0) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/amd64/amd64/trap.c:801
#5  0xffffffff80eb9f74 in trap (frame=0xfffffe02325b42d0) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/amd64/amd64/trap.c:198
#6  0xffffffff80e9aa61 in calltrap () at /usr/home/anindya/graphics/freebsd-base-graphics/sys/amd64/amd64/exception.S:236G
#7  0xffffffff80994524 in pfs_destroy (pn=0xfffff800384a8400) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/fs/pseudofs/pseudofs.c:296
#8  0xffffffff82523697 in linsysfs_destroy_class_dir (class=0xfffff800384b5e00) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/modules/linuxkpi/../../compat/linsysfs/linsysfs_init.c:291
#9  0xffffffff8250a04b in backlight_class_exit () at device.h:349
#10 0xffffffff82509a9b in _module_run (arg=<value optimized out>) at module.h:80
#11 0xffffffff80a20e5f in linker_file_unload (file=<value optimized out>, flags=<value optimized out>) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/kern/kern_linker.c:284
#12 0xffffffff80a21003 in linker_file_unload (file=<value optimized out>, flags=<value optimized out>) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/kern/kern_linker.c:701
#13 0xffffffff80a21003 in linker_file_unload (file=<value optimized out>, flags=<value optimized out>) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/kern/kern_linker.c:701
#14 0xffffffff80f81dea in link_elf_load_file (cls=<value optimized out>, filename=<value optimized out>, result=<value optimized out>)
    at /usr/home/anindya/graphics/freebsd-base-graphics/sys/kern/link_elf_obj.c:960
#15 0xffffffff80a204df in linker_load_module (kldname=<value optimized out>, modname=0xfffff800060ebc00 "radeonkms", parent=<value optimized out>, verinfo=0x0, lfpp=<value optimized out>) at linker_if.h:161
#16 0xffffffff80a21d27 in kern_kldload (td=<value optimized out>, file=<value optimized out>, fileid=0xfffffe02325b4a54) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/kern/kern_linker.c:1041
#17 0xffffffff80a21deb in sys_kldload (td=0xfffff80007b50a20, uap=<value optimized out>) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/kern/kern_linker.c:1067
#18 0xffffffff80ebaab9 in amd64_syscall (td=0xfffff80007b50a20, traced=0) at subr_syscall.c:135
#19 0xffffffff80e9ad4b in Xfast_syscall () at /usr/home/anindya/graphics/freebsd-base-graphics/sys/amd64/amd64/exception.S:396
#20 0x00000008023f250a in ?? ()
Previous frame inner to this frame (corrupt stack?)
Current language:  auto; currently minimal
(kgdb) f 10
#10 0xffffffff82509a9b in _module_run (arg=<value optimized out>) at module.h:80
80              fn();
(kgdb) f 9
#9  0xffffffff8250a04b in backlight_class_exit () at device.h:349
349             linsysfs_destroy_class_dir(class);
(kgdb) f 8
#8  0xffffffff82523697 in linsysfs_destroy_class_dir (class=0xfffff800384b5e00) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/modules/linuxkpi/../../compat/linsysfs/linsysfs_init.c:291
291                     pfs_destroy(class->sd);
(kgdb) p *class->sd
$1 = {
  pn_name = 0xfffff800384a8400 "***JUNK***"..., pn_type = 3735929054, pn_flags = -559038242, pn_mutex = {lock_object = {l
      lo_data = 3735929054, lo_witness = 0xdeadc0dedeadc0de}, mtx_lock = 16045693110842147038}, pn_data = 0xdeadc0dedeadc0de, pn_fill = 0xdeadc0dedeadc0de, pn_ioctl = 0xdeadc0dedeadc0de, 
  pn_close = 0xdeadc0dedeadc0de, pn_attr = 0xdeadc0dedeadc0de, pn_vis = 0xdeadc0dedeadc0de, pn_getextattr = 0xdeadc0dedeadc0de, pn_destroy = 0xdeadc0dedeadc0de, pn_info = 0xdeadc0dedeadc0de, 
  pn_fileno = 3735929054, pn_parent = 0xdeadc0dedeadc0de, pn_nodes = 0xdeadc0dedeadc0de, pn_next = 0xdeadc0dedeadc0de}
(kgdb) f 7
#7  0xffffffff80994524 in pfs_destroy (pn=0xfffff800384a8400) at /usr/home/anindya/graphics/freebsd-base-graphics/sys/fs/pseudofs/pseudofs.c:296
296             if (pn->pn_parent)
(kgdb) f 6
#6  0xffffffff80e9aa61 in calltrap () at /usr/home/anindya/graphics/freebsd-base-graphics/sys/amd64/amd64/exception.S:236
236             call    trap_check
Current language:  auto; currently asm
(kgdb)

Looks like some dangling pointers. This does not yet have Johannes' updates. I'll try rebuilding with those.

Anindya


More information about the freebsd-x11 mailing list