Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 Apr 2009 11:16:57 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        deeptech71@gmail.com
Cc:        freebsd-current@freebsd.org, rnoland@freebsd.org
Subject:   Re: diagnosing freezes (DRI?)
Message-ID:  <200904161116.58094.jhb@freebsd.org>
In-Reply-To: <49E6ACEE.6080301@gmail.com>
References:  <49E6ACEE.6080301@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
[ moved to current@ ]

On Wednesday 15 April 2009 11:58:38 pm deeptech71@gmail.com wrote:
> I can reliably (~40%) reproduce a freeze, which I think is related.
> 
> Using the GENERIC debug kernel built from SVN HEAD:
> 
> # cd /usr/obj/usr/src/sys/GENERIC/
> # kgdb kernel.debug /var/crash/vmcore.0
> 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 "i386-marcel-freebsd"... 

[ snipped lots of stuff ]

> Kernel page fault with the following non-sleepable locks held: 
> 
> exclusive sleep mutex drmdev (drmdev) r = 0 (0xc373f860) locked @ 
> /usr/src/sys/modules/drm/drm/../../../dev/drm/drm_drv.c:777 
> 
> KDB: stack backtrace: 
> 
> calltrap() at calltrap+0x6 
> 
> --- trap 0xc, eip = 0xc0b611b6, esp = 0xd67d4a98, ebp = 0xd67d4b48 --- 
> 
> slow_copyin(c373f800,c4103300,c42e64e0,d67d4b64,0,...) at 
> slow_copyin+0x6
> radeon_cp_texture(c373f800,c42e64e0,c4103300,309,c0c26218,...) at 
> radeon_cp_texture+0x199 
> 
> drm_ioctl(c39d4e00,c018644e,c42e64e0,3,c40afaf0,...) at drm_ioctl+0x356 
> 

The drm code is doing a copyin() while holding a mutex (which is not allowed).

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200904161116.58094.jhb>