Re: drm causes kernel panic

From: Robert Noland <rnoland_at_FreeBSD.org>
Date: Wed, 03 Sep 2008 00:39:53 -0400
On Tue, 2008-09-02 at 18:16 -0700, Steve Kargl wrote:
> Built world/kernel with today sources.  Upon starting Xorg 
> as a normal user, I was greeted with
> 
> Script started on Tue Sep  2 18:12:22 2008
> Unread portion of the kernel message buffer:
> panic: lock (sleep mutex) drmdev not locked _at_ /usr/src/sys/dev/drm/drm_pci.c:77
> cpuid = 0
> Uptime: 24s
> Physical memory: 8118 MB
> Dumping 346 MB: 331 315 299 283 267 251 235 219 203 187 171 155 139 123 107 91 75 59 43 27 11
> 
> #0  doadump () at pcpu.h:195
> 195	pcpu.h: No such file or directory.
> 	in pcpu.h
> (kgdb) bt
> #0  doadump () at pcpu.h:195
> #1  0xffffffff802ee4da in boot (howto=260)
>     at /usr/src/sys/kern/kern_shutdown.c:418
> #2  0xffffffff802ee947 in panic (fmt=Variable "fmt" is not available.
> )
>     at /usr/src/sys/kern/kern_shutdown.c:572
> #3  0xffffffff803301ca in witness_unlock (lock=0xffffffff806f3d60, flags=8, 
>     file=0xffffffff8055dc88 "/usr/src/sys/dev/drm/drm_pci.c", line=77)
>     at /usr/src/sys/kern/subr_witness.c:1460
> #4  0xffffffff802e20c6 in _mtx_unlock_flags (m=0xffffff00017b41a8, opts=0, 
>     file=0xffffffff8055dc88 "/usr/src/sys/dev/drm/drm_pci.c", line=77)
>     at /usr/src/sys/kern/kern_mutex.c:199
> #5  0xffffffff8021a945 in drm_pci_alloc (dev=Variable "dev" is not available.
> )
>     at /usr/src/sys/dev/drm/drm_pci.c:77
> #6  0xffffffff80214654 in drm_addmap (dev=0xffffff00017b4000, offset=0, 
>     size=16384, type=_DRM_CONSISTENT, flags=Variable "flags" is not available.
> )
>     at /usr/src/sys/dev/drm/drm_bufs.c:247
> #7  0xffffffff80214b8b in drm_addmap_ioctl (dev=0xffffff00017b4000, 
>     data=0xffffff000576c480, file_priv=Variable "file_priv" is not available.
> )
>     at /usr/src/sys/dev/drm/drm_bufs.c:291

I can't quite tell how we got here from this trace... What graphics
hardware are you using and can you tell me what was going on when it
paniced?

robert.

> #8  0xffffffff8021786e in drm_ioctl (kdev=Variable "kdev" is not available.
> )
>     at /usr/src/sys/dev/drm/drm_drv.c:952
> #9  0xffffffff802bb4e5 in giant_ioctl (dev=0xffffff000188e400, 
>     cmd=3223872533, data=0xffffff000576c480 "", fflag=67, 
>     td=0xffffff0005a25a20) at /usr/src/sys/kern/kern_conf.c:407
> ---Type <return> to continue, or q <return> to quit---
> #10 0xffffffff80288eea in devfs_ioctl_f (fp=0xffffff0005665c30, 
>     com=3223872533, data=0xffffff000576c480, cred=Variable "cred" is not available.
> )
>     at /usr/src/sys/fs/devfs/devfs_vnops.c:585
> #11 0xffffffff80332942 in kern_ioctl (td=0xffffff0005a25a20, fd=Variable "fd" is not available.
> )
>     at file.h:262
> #12 0xffffffff80332ba0 in ioctl (td=0xffffff0005a25a20, 
>     uap=0xffffffff2231fbf0) at /usr/src/sys/kern/sys_generic.c:677
> #13 0xffffffff804f4f9f in syscall (frame=0xffffffff2231fc80)
>     at /usr/src/sys/amd64/amd64/trap.c:897
> #14 0xffffffff804d8b6b in Xfast_syscall ()
>     at /usr/src/sys/amd64/amd64/exception.S:338
> #15 0x000000020185340c in ?? ()
> Previous frame inner to this frame (corrupt stack?)
> (kgdb) quit
> exit
> 
> Script done on Tue Sep  2 18:13:12 2008

Received on Wed Sep 03 2008 - 03:06:12 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:34 UTC