drm-next-kmod: Fatal trap 12: page fault while in kernel mode

Yuri Pankov <[email protected]>
Newsgroups gmane.os.freebsd.devel.x11
Message-ID <[email protected]>
Hi,

12.0-ALPHA8 #0 r339021, drm-next-kmod 4.11.g20180822.

Getting the following panic while trying to `kldload amdgpu`:

<6>[drm] amdgpu kernel modesetting enabled.

Fatal trap 12: page fault while in kernel mode
cpuid = 6; apic id = 06
fault virtual address   = 0x0
fault code              = supervisor read data, page not present
instruction pointer     = 0x20:0xffffffff80c76b84
stack pointer           = 0x28:0xfffffe00cc12f2f0
frame pointer           = 0x28:0xfffffe00cc12f2f0
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         = 11331 (kldload)

__curthread () at ./machine/pcpu.h:230
230             __asm("movq %%gs:%1,%0" : "=r" (td)
(kgdb) bt
#0  __curthread () at ./machine/pcpu.h:230
#1  doadump (textdump=0) at /usr/src/sys/kern/kern_shutdown.c:366
#2  0xffffffff8043ca9b in db_dump (dummy=<optimized out>, 
dummy2=<unavailable>, dummy3=<unavailable>, dummy4=<unavailable>)
     at /usr/src/sys/ddb/db_command.c:574
#3  0xffffffff8043c869 in db_command (last_cmdp=<optimized out>, 
cmd_table=<optimized out>, dopager=<optimized out>) at 
/usr/src/sys/ddb/db_command.c:481
#4  0xffffffff8043c5e4 in db_command_loop () at 
/usr/src/sys/ddb/db_command.c:534
#5  0xffffffff8043f7ff in db_trap (type=<optimized out>, code=<optimized 
out>) at /usr/src/sys/ddb/db_main.c:252
#6  0xffffffff80bd3f83 in kdb_trap (type=12, code=0, tf=<optimized out>) 
at /usr/src/sys/kern/subr_kdb.c:693
#7  0xffffffff8105edf1 in trap_fatal (frame=0xfffffe00cc12f230, eva=0) 
at /usr/src/sys/amd64/amd64/trap.c:921
#8  0xffffffff8105ef12 in trap_pfault (frame=0xfffffe00cc12f230, 
usermode=<optimized out>) at /usr/src/sys/amd64/amd64/trap.c:765
#9  0xffffffff8105e53a in trap (frame=0xfffffe00cc12f230) at 
/usr/src/sys/amd64/amd64/trap.c:441
#10 <signal handler called>
#11 strcmp (s1=0x0, s2=<optimized out>) at /usr/src/sys/libkern/strcmp.c:46
#12 0xffffffff80bc200e in devclass_find_driver_internal 
(classname=0xfffff80003ae7c58 "drm", dc=<optimized out>) at 
/usr/src/sys/kern/subr_bus.c:1394
#13 first_matching_driver (dc=0xfffff80003767880, dev=<optimized out>) 
at /usr/src/sys/kern/subr_bus.c:2070
#14 device_probe_child (dev=0xfffff80003ae2b00, 
child=0xfffff80003ae2900) at /usr/src/sys/kern/subr_bus.c:2116
#15 0xffffffff80bc2e68 in device_probe (dev=0xfffff80003ae2900) at 
/usr/src/sys/kern/subr_bus.c:2869
#16 0xffffffff80bc2f22 in device_probe_and_attach 
(dev=0xfffff80003ae2900) at /usr/src/sys/kern/subr_bus.c:2893
#17 0xffffffff80bc4b6d in bus_generic_driver_added 
(dev=0xfffff80003ae2b00, driver=<optimized out>) at 
/usr/src/sys/kern/subr_bus.c:3981
#18 0xffffffff80bc0eba in BUS_DRIVER_ADDED (_dev=<optimized out>, 
_driver=<optimized out>) at ./bus_if.h:210
#19 devclass_driver_added (dc=0xfffff80003767880, 
driver=0xffffffff84ae9da8 <bw_calcs_init+10104>) at 
/usr/src/sys/kern/subr_bus.c:1101
#20 0xffffffff80bc0dd9 in devclass_add_driver (dc=0xfffff80003767880, 
driver=0xffffffff84ae9da8 <bw_calcs_init+10104>, pass=2147483647,
     dcp=0xffffffff84ae9dd8 <bw_calcs_init+10152>) at 
/usr/src/sys/kern/subr_bus.c:1177
#21 0xffffffff84bb537b in acquire_i2c_hw_engine () at 
/usr/src/sys/compat/linuxkpi/common/src/linux_pci.c:279
#22 0xffffffff84b5ed21 in 
dispclkdppclkdcfclk_deep_sleep_prefetch_parameters_watermarks_and_performance_calculation 
() from /boot/modules/amdgpu.ko
#23 0x0000000000000246 in ?? ()
#24 0xffffffff81fcbde8 in w_locklistdata ()
#25 0x0000000000000000 in ?? ()
(kgdb) frame 12
#12 0xffffffff80bc200e in devclass_find_driver_internal 
(classname=0xfffff80003ae7c58 "drm", dc=<optimized out>) at 
/usr/src/sys/kern/subr_bus.c:1394
1394                    if (!strcmp(dl->driver->name, classname))
(kgdb) list
1389            driverlink_t dl;
1390
1391            PDEBUG(("%s in devclass %s", classname, DEVCLANAME(dc)));
1392
1393            TAILQ_FOREACH(dl, &dc->drivers, link) {
1394                    if (!strcmp(dl->driver->name, classname))
1395                            return (dl);
1396            }
1397
1398            PDEBUG(("not found"));

So it looks like one of the driver classes has uninitialized name?

_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-x11
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.