NetBSD Problem Report #49862

From wiz@yt.nih.at  Mon Apr 27 08:55:48 2015
Return-Path: <wiz@yt.nih.at>
Received: from mail.netbsd.org (mail.netbsd.org [149.20.53.66])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(Client CN "mail.netbsd.org", Issuer "Postmaster NetBSD.org" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id 24C9DA5864
	for <gnats-bugs@gnats.NetBSD.org>; Mon, 27 Apr 2015 08:55:48 +0000 (UTC)
Message-Id: <20150427085445.7BB042AC109@yt.nih.at>
Date: Mon, 27 Apr 2015 10:54:45 +0200 (CEST)
From: Thomas Klausner <wiz@NetBSD.org>
Reply-To: Thomas Klausner <wiz@NetBSD.org>
To: gnats-bugs@NetBSD.org
Subject: drm-induced kernel panic
X-Send-Pr-Version: 3.95

>Number:         49862
>Category:       kern
>Synopsis:       drm-induced kernel panic
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    riastradh
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Apr 27 09:00:00 +0000 2015
>Closed-Date:    Sat Aug 01 08:35:54 +0000 2015
>Last-Modified:  Sat Aug 01 08:35:54 +0000 2015
>Originator:     Thomas Klausner
>Release:        NetBSD 7.99.10
>Organization:
Curiosity is the very basis of education and if you tell me that 
curiosity killed the cat, I say only that the cat died nobly.
- Arnold Edinborough
>Environment:


Architecture: x86_64
Machine: amd64
>Description:

Using 7.99.10/amd64 from Apr 23 with basically a GENERIC kernel, I had
a kernel panic today while opening ~15 files with libreoffice (soffice
*doc).

dmesg contains:
RNING: WSAPRL NNIOTN GL:O WSEPRLE NDO T OLNO WTERRAEPD  EOXNI  T6R A0P
 EXIT 6 0
WARNfI7NfGe:f eWS2P5AL6R 3NNdION:TG
:L OSPWL ENROT ELDOW EROED ONN  TRATPREAXPI TE X6T  06
 0
WARNING: SPL NOT LOWERED ON TRAP EXIT 6 0
WARNING: SPL NOT LOWERED ON TRAP EXIT 6 0
WARNING: SPL NOT LOWERED ON TRAP EXIT 6 0
WARNING: SPL NOT LOWERED ON TRAP EXIT 6 0
cpu3: End traceback...
WARNING: SPL NOT LOWERED ON TRAP EXIT 6 0
WARNING: SPL NOT LOWERED ON TRAP EXIT 6 0
WWAARRNNIINNGG:: S PSPL LNO TN OLTO WLEORWEERDE DO NO NT RTARARAPNP IE NEGXIW:TIATR 6N 6I 0PN0
LG
 :N OSTP LL ONWEORED TON  LOWTERRAP EED IOTN  TRA P0
 EXIT 6 0

dumping to dev 168,3 (offset=8, size=8373576):

/var/run/rc.log says:

[running /etc/rc.d/savecore]
Checking for core dump...
savecore: reboot after panic: panic: kernel diagnostic assertion "((mutex->wwm_state != WW_OWNED) || (mutex->wwm_u.owner != curlwp))" failed: file "/archive/foreign/src/sys/external/bsd/drm2/linux/linux_ww_mutex.c", line 639 locking 0xfffffe86b11fc220 against myself: 0xfffffe881cddd880
savecore: system went down at Sun Apr 26 11:12:50 2015


Backtrace is:
(gdb) target kvm netbsd.78.core
0xffffffff80682ad5 in cpu_reboot (howto=howto@entry=260, bootstr=bootstr@entry=0x0) at /archive/foreign/src/sys/arch/amd64/amd64/machdep.c:671
671                     dumpsys();
(gdb) bt
#0  0xffffffff80682ad5 in cpu_reboot (howto=howto@entry=260, bootstr=bootstr@entry=0x0) at /archive/foreign/src/sys/arch/amd64/amd64/machdep.c:671
#1  0xffffffff808c33e4 in vpanic (fmt=0xffffffff80d8d050 "kernel %sassertion \"%s\" failed: file \"%s\", line %d locking %p against myself: %p", ap=ap@entry=0xfffffe813d79faf8)
    at /archive/foreign/src/sys/kern/subr_prf.c:340
#2  0xffffffff80a61413 in kern_assert (fmt=fmt@entry=0xffffffff80d8d050 "kernel %sassertion \"%s\" failed: file \"%s\", line %d locking %p against myself: %p")
    at /archive/foreign/src/sys/lib/libkern/kern_assert.c:51
#3  0xffffffff8067f0bb in linux_ww_mutex_trylock (mutex=0xfffffe86b11fc220) at /archive/foreign/src/sys/external/bsd/drm2/linux/linux_ww_mutex.c:637
#4  0xffffffff8091dfa4 in __ttm_bo_reserve (ticket=0x0, use_ticket=false, no_wait=true, interruptible=true, bo=0xfffffe86b11fc058)
    at /archive/foreign/src/sys/external/bsd/drm2/dist/include/drm/ttm/ttm_bo_driver.h:852
#5  ttm_bo_reserve (interruptible=true, no_wait=true, ticket=0x0, use_ticket=false, bo=0xfffffe86b11fc058)
    at /archive/foreign/src/sys/external/bsd/drm2/dist/include/drm/ttm/ttm_bo_driver.h:919
#6  ttm_bo_uvm_fault (ufi=ufi@entry=0xfffffe813d79fcc8, vaddr=vaddr@entry=140187597967360, pps=pps@entry=0xfffffe813d79fd80, npages=npages@entry=1, centeridx=centeridx@entry=0,
    access_type=access_type@entry=2, flags=flags@entry=66) at /archive/foreign/src/sys/external/bsd/drm2/ttm/ttm_bo_vm.c:105
#7  0xffffffff807cf0c4 in radeon_ttm_fault (ufi=0xfffffe813d79fcc8, vaddr=140187597967360, pps=0xfffffe813d79fd80, npages=1, centeridx=0, access_type=<optimized out>, flags=66)
    at /archive/foreign/src/sys/external/bsd/drm2/dist/drm/radeon/radeon_ttm.c:873
#8  0xffffffff809b64c1 in uvm_fault_internal (orig_map=orig_map@entry=0xfffffe88260fd460, vaddr=vaddr@entry=140187597967360, access_type=access_type@entry=2,
    fault_flag=fault_flag@entry=0) at /archive/foreign/src/sys/uvm/uvm_fault.c:865
#9  0xffffffff809120f1 in trap (frame=0xfffffe813d79ff00) at /archive/foreign/src/sys/arch/amd64/amd64/trap.c:556
#10 0xffffffff8010108e in alltraps ()

I still have the kernel (+gdb) and the core in case someone
wants to look at them in more detail.
>How-To-Repeat:
Not sure, I have run libreoffice on more files after that and didn't see
it again. Not on that many in a row though.
>Fix:
Please!

>Release-Note:

>Audit-Trail:

Responsible-Changed-From-To: kern-bug-people->riastradh
Responsible-Changed-By: riastradh@NetBSD.org
Responsible-Changed-When: Mon, 27 Apr 2015 13:06:29 +0000
Responsible-Changed-Why:
mine


From: Taylor R Campbell <riastradh@NetBSD.org>
To: Thomas Klausner <wiz@NetBSD.org>
Cc: gnats-bugs@NetBSD.org
Subject: Re: kern/49862
Date: Wed, 20 May 2015 12:47:23 +0000

 This is a multi-part message in MIME format.
 --=_wia/yt5O+Lc5CSGr1omnrGEHa+dQ5NLv

 Can you please try the attached patch, with `options LOCKDEBUG', to
 enable lockdebug for the kind of mutex in question?  (I haven't tested
 the patch yet, so you may hit bugs in the patch first.)

 --=_wia/yt5O+Lc5CSGr1omnrGEHa+dQ5NLv
 Content-Type: text/plain; charset="ISO-8859-1"; name="ww_lockdebug"
 Content-Transfer-Encoding: quoted-printable
 Content-Disposition: attachment; filename="ww_lockdebug.patch"

 Index: sys/external/bsd/drm2/include/linux/ww_mutex.h
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /cvsroot/src/sys/external/bsd/drm2/include/linux/ww_mutex.h,v
 retrieving revision 1.10
 diff -p -u -r1.10 ww_mutex.h
 --- sys/external/bsd/drm2/include/linux/ww_mutex.h	8 Jan 2015 23:35:47 -000=
 0	1.10
 +++ sys/external/bsd/drm2/include/linux/ww_mutex.h	20 May 2015 12:37:36 -00=
 00
 @@ -70,6 +70,9 @@ struct ww_mutex {
  	struct ww_class		*wwm_class;
  	struct rb_tree		wwm_waiters;
  	kcondvar_t		wwm_cv;
 +#ifdef LOCKDEBUG
 +	bool			wwm_debug;
 +#endif
  };
 =20
  /* XXX Make the nm output a little more greppable...  */
 Index: sys/external/bsd/drm2/linux/linux_ww_mutex.c
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /cvsroot/src/sys/external/bsd/drm2/linux/linux_ww_mutex.c,v
 retrieving revision 1.1
 diff -p -u -r1.1 linux_ww_mutex.c
 --- sys/external/bsd/drm2/linux/linux_ww_mutex.c	8 Jan 2015 23:35:47 -0000	=
 1.1
 +++ sys/external/bsd/drm2/linux/linux_ww_mutex.c	20 May 2015 12:37:36 -0000
 @@ -35,12 +35,23 @@ __KERNEL_RCSID(0, "$NetBSD: linux_ww_mut
  #include <sys/types.h>
  #include <sys/atomic.h>
  #include <sys/condvar.h>
 +#include <sys/lockdebug.h>
  #include <sys/lwp.h>
  #include <sys/mutex.h>
  #include <sys/rbtree.h>
 =20
  #include <linux/ww_mutex.h>
 =20
 +#define	WW_WANTLOCK(WW)							      \
 +	LOCKDEBUG_WANTLOCK((WW)->wwm_debug, (WW),			      \
 +	    (uintptr_t)__builtin_return_address(0), 0)
 +#define	WW_LOCKED(WW)							      \
 +	LOCKDEBUG_LOCKED((WW)->wwm_debug, (WW), NULL,			      \
 +	    (uintptr_t)__builtin_return_address(0), 0)
 +#define	WW_UNLOCKED(WW)							      \
 +	LOCKDEBUG_UNLOCKED((WW)->wwm_debug, (WW),			      \
 +	    (uintptr_t)__builtin_return_address(0), 0)
 +
  static int
  ww_acquire_ctx_compare(void *cookie __unused, const void *va, const void *=
 vb)
  {
 @@ -109,6 +120,51 @@ ww_acquire_fini(struct ww_acquire_ctx *c
  	ctx->wwx_owner =3D NULL;
  }
 =20
 +static void
 +ww_dump(volatile void *cookie)
 +{
 +	volatile struct ww_mutex *mutex =3D cookie;
 +
 +	printf_nolog("%-13s: ", "state");
 +	switch (mutex->wwm_state) {
 +	case WW_UNLOCKED:
 +		printf_nolog("unlocked\n");
 +		break;
 +	case WW_OWNED:
 +		printf_nolog("owned by lwp\n");
 +		printf_nolog("%-13s: %p\n", "owner", mutex->wwm_u.owner);
 +		printf_nolog("%-13s: %s\n", "waiters",
 +		    cv_has_waiters(__UNVOLATILE(&mutex->wwm_cv))
 +			? "yes" : "no");
 +		break;
 +	case WW_CTX:
 +		printf_nolog("owned via ctx\n");
 +		printf_nolog("%-13s: %p\n", "context", mutex->wwm_u.ctx);
 +		printf_nolog("%-13s: %p\n", "lwp",
 +		    mutex->wwm_u.ctx->wwx_owner);
 +		printf_nolog("%-13s: %s\n", "waiters",
 +		    cv_has_waiters(__UNVOLATILE(&mutex->wwm_cv))
 +			? "yes" : "no");
 +		break;
 +	case WW_WANTOWN:
 +		printf_nolog("owned via ctx\n");
 +		printf_nolog("%-13s: %p\n", "context", mutex->wwm_u.ctx);
 +		printf_nolog("%-13s: %p\n", "lwp",
 +		    mutex->wwm_u.ctx->wwx_owner);
 +		printf_nolog("%-13s: %s\n", "waiters", "yes (noctx)");
 +		break;
 +	default:
 +		printf_nolog("unknown\n");
 +		break;
 +	}
 +}
 +
 +static const lockops_t ww_lockops =3D {
 +	.lo_name =3D "Wait/wound mutex",
 +	.lo_type =3D LOCKOPS_SLEEP,
 +	.lo_dump =3D ww_dump,
 +};
 +
  void
  ww_mutex_init(struct ww_mutex *mutex, struct ww_class *class)
  {
 @@ -122,17 +178,25 @@ ww_mutex_init(struct ww_mutex *mutex, st
  	mutex->wwm_class =3D class;
  	rb_tree_init(&mutex->wwm_waiters, &ww_acquire_ctx_rb_ops);
  	cv_init(&mutex->wwm_cv, "linuxwwm");
 +#ifdef LOCKDEBUG
 +	mutex->wwm_debug =3D LOCKDEBUG_ALLOC(mutex, &ww_lockops,
 +	    (uintptr_t)__builtin_return_address(0));
 +#endif
  }
 =20
  void
  ww_mutex_destroy(struct ww_mutex *mutex)
  {
 =20
 +	KASSERT(mutex->wwm_state =3D=3D WW_UNLOCKED);
 +
 +#ifdef LOCKDEBUG
 +	LOCKDEBUG_FREE(mutex->wwm_debug, mutex);
 +#endif
  	cv_destroy(&mutex->wwm_cv);
  #if 0
  	rb_tree_destroy(&mutex->wwm_waiters, &ww_acquire_ctx_rb_ops);
  #endif
 -	KASSERT(mutex->wwm_state =3D=3D WW_UNLOCKED);
  	mutex_destroy(&mutex->wwm_lock);
  }
 =20
 @@ -267,6 +331,7 @@ retry:	switch (mutex->wwm_state) {
  	case WW_UNLOCKED:
  		mutex->wwm_state =3D WW_OWNED;
  		mutex->wwm_u.owner =3D curlwp;
 +		WW_LOCKED(mutex);
  		break;
  	case WW_OWNED:
  		KASSERTMSG((mutex->wwm_u.owner !=3D curlwp),
 @@ -301,6 +366,7 @@ retry:	switch (mutex->wwm_state) {
  	case WW_UNLOCKED:
  		mutex->wwm_state =3D WW_OWNED;
  		mutex->wwm_u.owner =3D curlwp;
 +		WW_LOCKED(mutex);
  		break;
  	case WW_OWNED:
  		KASSERTMSG((mutex->wwm_u.owner !=3D curlwp),
 @@ -335,6 +401,7 @@ int
  ww_mutex_lock(struct ww_mutex *mutex, struct ww_acquire_ctx *ctx)
  {
 =20
 +	WW_WANTLOCK(mutex);
  	ASSERT_SLEEPABLE();
 =20
  	if (ctx =3D=3D NULL) {
 @@ -357,6 +424,7 @@ retry:	switch (mutex->wwm_state) {
  	case WW_UNLOCKED:
  		mutex->wwm_state =3D WW_CTX;
  		mutex->wwm_u.ctx =3D ctx;
 +		WW_LOCKED(mutex);
  		goto locked;
  	case WW_OWNED:
  		KASSERTMSG((mutex->wwm_u.owner !=3D curlwp),
 @@ -415,6 +483,7 @@ ww_mutex_lock_interruptible(struct ww_mu
  {
  	int ret;
 =20
 +	WW_WANTLOCK(mutex);
  	ASSERT_SLEEPABLE();
 =20
  	if (ctx =3D=3D NULL)
 @@ -435,6 +504,7 @@ retry:	switch (mutex->wwm_state) {
  	case WW_UNLOCKED:
  		mutex->wwm_state =3D WW_CTX;
  		mutex->wwm_u.ctx =3D ctx;
 +		WW_LOCKED(mutex);
  		goto locked;
  	case WW_OWNED:
  		KASSERTMSG((mutex->wwm_u.owner !=3D curlwp),
 @@ -499,6 +569,7 @@ void
  ww_mutex_lock_slow(struct ww_mutex *mutex, struct ww_acquire_ctx *ctx)
  {
 =20
 +	WW_WANTLOCK(mutex);
  	ASSERT_SLEEPABLE();
 =20
  	if (ctx =3D=3D NULL) {
 @@ -524,6 +595,7 @@ retry:	switch (mutex->wwm_state) {
  	case WW_UNLOCKED:
  		mutex->wwm_state =3D WW_CTX;
  		mutex->wwm_u.ctx =3D ctx;
 +		WW_LOCKED(mutex);
  		goto locked;
  	case WW_OWNED:
  		KASSERTMSG((mutex->wwm_u.owner !=3D curlwp),
 @@ -561,6 +633,7 @@ ww_mutex_lock_slow_interruptible(struct=20
  {
  	int ret;
 =20
 +	WW_WANTLOCK(mutex);
  	ASSERT_SLEEPABLE();
 =20
  	if (ctx =3D=3D NULL)
 @@ -584,6 +657,7 @@ retry:	switch (mutex->wwm_state) {
  	case WW_UNLOCKED:
  		mutex->wwm_state =3D WW_CTX;
  		mutex->wwm_u.ctx =3D ctx;
 +		WW_LOCKED(mutex);
  		goto locked;
  	case WW_OWNED:
  		KASSERTMSG((mutex->wwm_u.owner !=3D curlwp),
 @@ -632,6 +706,7 @@ ww_mutex_trylock(struct ww_mutex *mutex)
  	if (mutex->wwm_state =3D=3D WW_UNLOCKED) {
  		mutex->wwm_state =3D WW_OWNED;
  		mutex->wwm_u.owner =3D curlwp;
 +		WW_LOCKED(mutex);
  		ret =3D 1;
  	} else {
  		KASSERTMSG(((mutex->wwm_state !=3D WW_OWNED) ||
 @@ -702,6 +777,7 @@ ww_mutex_unlock(struct ww_mutex *mutex)
  		mutex->wwm_state =3D WW_UNLOCKED;
  		break;
  	}
 +	WW_UNLOCKED(mutex);
  	cv_broadcast(&mutex->wwm_cv);
  	mutex_exit(&mutex->wwm_lock);
  }

 --=_wia/yt5O+Lc5CSGr1omnrGEHa+dQ5NLv--

State-Changed-From-To: open->feedback
State-Changed-By: riastradh@NetBSD.org
State-Changed-When: Thu, 21 May 2015 04:56:33 +0000
State-Changed-Why:
feedback requested


From: "Taylor R Campbell" <riastradh@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/49862 CVS commit: src/sys/external/bsd/drm2
Date: Thu, 21 May 2015 21:55:55 +0000

 Module Name:	src
 Committed By:	riastradh
 Date:		Thu May 21 21:55:55 UTC 2015

 Modified Files:
 	src/sys/external/bsd/drm2/include/linux: ww_mutex.h
 	src/sys/external/bsd/drm2/linux: linux_ww_mutex.c

 Log Message:
 Adapt ww_mutex to use LOCKDEBUG.

 Should help track down PR 49862.


 To generate a diff of this commit:
 cvs rdiff -u -r1.10 -r1.11 src/sys/external/bsd/drm2/include/linux/ww_mutex.h
 cvs rdiff -u -r1.1 -r1.2 src/sys/external/bsd/drm2/linux/linux_ww_mutex.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: Thomas Klausner <wiz@NetBSD.org>
To: Taylor R Campbell <riastradh@NetBSD.org>
Cc: gnats-bugs@NetBSD.org
Subject: Re: kern/49862
Date: Thu, 28 May 2015 11:26:09 +0200

 On Wed, May 20, 2015 at 12:47:23PM +0000, Taylor R Campbell wrote:
 > Can you please try the attached patch, with `options LOCKDEBUG', to
 > enable lockdebug for the kind of mutex in question?  (I haven't tested
 > the patch yet, so you may hit bugs in the patch first.)

 I've just rebooted into a kernel from today, which I understand
 includes the patch already, and cannot reproduce my issue with a
 LOCKDEBUG kernel nor with a kernel without LOCKDEBUG.

 I've tried mpv -vo opengl and running SDL applications, both of which
 showed the problems before, but everything worked fine.

 So this seems fixed. Any ideas what could have fixed it?

 Thank you!
  Thomas

From: Thomas Klausner <wiz@NetBSD.org>
To: NetBSD bugtracking <gnats-bugs@NetBSD.org>
Cc: 
Subject: Re: kern/49862
Date: Thu, 28 May 2015 11:40:21 +0200

 On Thu, May 28, 2015 at 09:30:00AM +0000, Thomas Klausner wrote:
 > The following reply was made to PR kern/49862; it has been noted by GNATS.
 > 
 > From: Thomas Klausner <wiz@NetBSD.org>
 > To: Taylor R Campbell <riastradh@NetBSD.org>
 > Cc: gnats-bugs@NetBSD.org
 > Subject: Re: kern/49862
 > Date: Thu, 28 May 2015 11:26:09 +0200
 > 
 >  On Wed, May 20, 2015 at 12:47:23PM +0000, Taylor R Campbell wrote:
 >  > Can you please try the attached patch, with `options LOCKDEBUG', to
 >  > enable lockdebug for the kind of mutex in question?  (I haven't tested
 >  > the patch yet, so you may hit bugs in the patch first.)
 >  
 >  I've just rebooted into a kernel from today, which I understand
 >  includes the patch already, and cannot reproduce my issue with a
 >  LOCKDEBUG kernel nor with a kernel without LOCKDEBUG.
 >  
 >  I've tried mpv -vo opengl and running SDL applications, both of which
 >  showed the problems before, but everything worked fine.
 >  
 >  So this seems fixed. Any ideas what could have fixed it?

 Ignore this, I confused the PRs. I'll try again later.
 Good that the mpv problem is fixed though :)
  Thomas

From: Thomas Klausner <wiz@NetBSD.org>
To: Taylor R Campbell <campbell@mumble.net>
Cc: NetBSD bugtracking <gnats-bugs@NetBSD.org>
Subject: Re: kern/49862
Date: Thu, 28 May 2015 21:46:02 +0200

 On Thu, May 28, 2015 at 04:08:31PM +0000, Taylor R Campbell wrote:
 >    Date: Thu, 28 May 2015 11:26:09 +0200
 >    From: Thomas Klausner <wiz@NetBSD.org>
 > 
 >    I've just rebooted into a kernel from today, which I understand
 >    includes the patch already, and cannot reproduce my issue with a
 >    LOCKDEBUG kernel nor with a kernel without LOCKDEBUG.
 > 
 > Glad to hear that LOCKDEBUG works at least!  How about the LibreOffice
 > issue?

 I've just tried again.
 Once with the non-lockdebug kernel since that's what I was running,
 opening the 14 files lead to a reboot without a crashdump.

 dmesg after reboot started with:

 WARNING: SPL NOT LOWERED ON SYSCALL 129 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 79 12 EXIT f7b47200 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 158 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 radeon_ttm_fault() at WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 122 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 netbsd:radeon_ttm_fault+0x6a
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 129 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 uvm_fault_internal() at WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 124 4 EXIT 0 6
 WARNING: SPL NOnT eLtObWsEdR:EDu vOmN_ fSaYuSlCtA_LiLn te1r 5n aElXIT +0 0x78
 28
 WARNING: SPL NOT LOWERED ON SYSCALL 132 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 trap() at WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 110 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXITn e0t b7s
 d:trap+0x346
 --- trap (number 6) ---
 WARNING: SPL NOT LOWERED ON SYSCALL 142 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
 7f7fefe2563d:
 WARNING: SPL NOT LOWERED ON SYSCALL 114 4 EXIT 0 6
 cpu11: End traceback...
 WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7

 Then I tried with a lockdebug kernel. First try was interrupted
 because there were lock files still lying around from the previous
 try, after I removed them, it worked without panic.

 I tried again in a different directory but couldn't reproduce it there
 either.

 >    I've tried mpv -vo opengl and running SDL applications, both of which
 >    showed the problems before, but everything worked fine.
 > 
 >    So this seems fixed. Any ideas what could have fixed it?
 > 
 > Nope!  But does that mean we can close 49722, if not 49862?

 Yes, I've closed it. Thanks!
  Thomas

State-Changed-From-To: feedback->open
State-Changed-By: wiz@NetBSD.org
State-Changed-When: Sat, 20 Jun 2015 08:18:48 +0000
State-Changed-Why:
Feedback supplied.


From: "Taylor R Campbell" <riastradh@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/49862 CVS commit: src/sys/external/bsd/drm2/ttm
Date: Mon, 27 Jul 2015 22:26:51 +0000

 Module Name:	src
 Committed By:	riastradh
 Date:		Mon Jul 27 22:26:51 UTC 2015

 Modified Files:
 	src/sys/external/bsd/drm2/ttm: ttm_bo_vm.c

 Log Message:
 Fix error branch: ttm_bo_unreserve on failure after ttm_bo_reserve.

 Tiny chance this will fix PR kern/49862 by not leaking a ww_mutex
 lock.


 To generate a diff of this commit:
 cvs rdiff -u -r1.8 -r1.9 src/sys/external/bsd/drm2/ttm/ttm_bo_vm.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: Thomas Klausner <wiz@NetBSD.org>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: PR/49862 CVS commit: src/sys/external/bsd/drm2/ttm
Date: Tue, 28 Jul 2015 02:04:09 +0200

 On Mon, Jul 27, 2015 at 10:30:01PM +0000, Taylor R Campbell wrote:
 > The following reply was made to PR kern/49862; it has been noted by GNATS.
 > 
 > From: "Taylor R Campbell" <riastradh@netbsd.org>
 > To: gnats-bugs@gnats.NetBSD.org
 > Cc: 
 > Subject: PR/49862 CVS commit: src/sys/external/bsd/drm2/ttm
 > Date: Mon, 27 Jul 2015 22:26:51 +0000
 > 
 >  Module Name:	src
 >  Committed By:	riastradh
 >  Date:		Mon Jul 27 22:26:51 UTC 2015
 >  
 >  Modified Files:
 >  	src/sys/external/bsd/drm2/ttm: ttm_bo_vm.c
 >  
 >  Log Message:
 >  Fix error branch: ttm_bo_unreserve on failure after ttm_bo_reserve.
 >  
 >  Tiny chance this will fix PR kern/49862 by not leaking a ww_mutex
 >  lock.

 I've just retried my simple:

 libreoffice *.doc

 test (in a directory with about 20 doc files) and paniced.
  SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  radeon_ttm_fault() at WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 122 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  netbsd:radeon_ttm_fault+0x6a
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 129 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  uvm_WfAaRuNlItN_Gi:n tSePrLn aNlO(T)  LaOtW ERED ON SYSCALL 101 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 123 4 EXIT 1 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  netbsd:uvm_fault_internal+0x828
  WARNING: SPL NOT LOWERED ON SYSCALL 132 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  trap() at WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 110 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  netbsd:trap+0x346
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  --- trap (number 6) ---
  WARNING: SPL NOT LOWERED ON SYSCALL 142 4 EXIT 0 6
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  WARNING: SPL NOT LOWERED ON SYSCALL 100 4 EXIT 0 6
  7f7fefe2563d:
  WARNING: SPL NOT LOWERED ON SYSCALL 1 5 EXIT 0 7
  cpu5: End traceback...
  WARNING: SPL NOT LOWERED ON SYSCALL 137 4 EXIT 0 6

 savecore: reboot after panic: panic: kernel diagnostic assertion "((mutex->wwm_state != WW_OWNED) || (mutex->wwm_u.owner != curlwp))" failed: file "/archive/foreign/src/sys/external/bsd/drm2/linux/linux_ww_mutex.c", line 760 locking 0xfffffe87Wf6ce7aA2R0N IaNgGa:i nSsPtL myself: 0xfffffe881ef51060
  NOT LOWERED ON SYSCALL 207 4 EXIT 0 6
  savecore: system went down at Tue Jul 28 01:56:40 2015

 savecore: writing compressed core to /var/crash/netbsd.80.core.gz

 Core and netbsd.gdb file (/netbsd.7.99.20c.gdb) available on request.
  Thomas

From: "Taylor R Campbell" <riastradh@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/49862 CVS commit: src/sys/external/bsd/drm2/ttm
Date: Tue, 28 Jul 2015 01:25:00 +0000

 Module Name:	src
 Committed By:	riastradh
 Date:		Tue Jul 28 01:25:00 UTC 2015

 Modified Files:
 	src/sys/external/bsd/drm2/ttm: ttm_bo_vm.c

 Log Message:
 ttm_bo_unreserve in case of ttm_bo_uvm_fault_idle restart.

 Better chance of fixing PR kern/49862 by avoiding leaking a buffer
 ww_mutex lock.


 To generate a diff of this commit:
 cvs rdiff -u -r1.9 -r1.10 src/sys/external/bsd/drm2/ttm/ttm_bo_vm.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->feedback
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Tue, 28 Jul 2015 05:01:02 +0000
State-Changed-Why:
after I found the second of these, my radeon no longer explodes with similar
symptoms, so there's a good chance we've found this one.


From: Thomas Klausner <wiz@NetBSD.org>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: kern/49862 (drm-induced kernel panic)
Date: Tue, 28 Jul 2015 10:27:31 +0200

 On Tue, Jul 28, 2015 at 05:01:02AM +0000, David Holland wrote:
 > Synopsis: drm-induced kernel panic
 > 
 > State-Changed-From-To: open->feedback
 > State-Changed-By: dholland@NetBSD.org
 > State-Changed-When: Tue, 28 Jul 2015 05:01:02 +0000
 > State-Changed-Why:
 > after I found the second of these, my radeon no longer explodes with similar
 > symptoms, so there's a good chance we've found this one.

 Well, kind of.
 soffice from libreoffice4 doesn't complete its startup for me any longer.
 (xterm, firefox, gmpc still work).
  Thomas

State-Changed-From-To: feedback->open
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Tue, 28 Jul 2015 08:31:45 +0000
State-Changed-Why:
alas, although maybe it's progress


From: Thomas Klausner <wiz@NetBSD.org>
To: NetBSD bugtracking <gnats-bugs@NetBSD.org>
Cc: 
Subject: Re: kern/49862 (drm-induced kernel panic)
Date: Tue, 28 Jul 2015 10:40:31 +0200

 On Tue, Jul 28, 2015 at 08:30:00AM +0000, Thomas Klausner wrote:
 >  soffice from libreoffice4 doesn't complete its startup for me any longer.
 >  (xterm, firefox, gmpc still work).

 More details:
 The splash screen appears and gets to about 30 percent, then disappears.
 Before the patch, after the splash screen finishes its progress bar,
 the documents open, instead I get a core dump:

 wiz@yt:~> gdb /usr/pkg/libreoffice4-4.4.4.3/program/soffice.bin soffice.bin.core
 GNU gdb (GDB) 7.7.1
 Copyright (C) 2014 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
 and "show warranty" for details.
 This GDB was configured as "x86_64--netbsd".
 Type "show configuration" for configuration details.
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>.
 Find the GDB manual and other documentation resources online at:
 <http://www.gnu.org/software/gdb/documentation/>.
 For help, type "help".
 Type "apropos word" to search for commands related to "word"...
 Reading symbols from /usr/pkg/libreoffice4-4.4.4.3/program/soffice.bin...(no debugging symbols found)...done.
 [New process 1]
 [New process 4]
 [New process 3]
 [New process 2]
 Core was generated by `soffice.bin'.
 Program terminated with signal SIGSEGV, Segmentation fault.
 #0  0x00007f7fe3c18eb9 in FcPatternObjectPosition () from /usr/pkg/lib/libfontconfig.so.1
 (gdb) bt
 #0  0x00007f7fe3c18eb9 in FcPatternObjectPosition () from /usr/pkg/lib/libfontconfig.so.1
 #1  0x00007f7fe3c194aa in FcPatternObjectFindElt () from /usr/pkg/lib/libfontconfig.so.1
 #2  0x00007f7fe3c1a087 in FcPatternObjectGet () from /usr/pkg/lib/libfontconfig.so.1
 #3  0x00007f7fe3c1a216 in FcPatternObjectGetString () from /usr/pkg/lib/libfontconfig.so.1
 #4  0x00007f7fe3c0b521 in FcConfigAddCache () from /usr/pkg/lib/libfontconfig.so.1
 #5  0x00007f7fe3c0b668 in FcConfigAddDirList () from /usr/pkg/lib/libfontconfig.so.1
 #6  0x00007f7fe3c0b7d1 in IA__FcConfigAppFontAddDir () from /usr/pkg/lib/libfontconfig.so.1
 #7  0x00007f7ff08044c5 in psp::PrintFontManager::addFontconfigDir(rtl::OString const&) ()
    from /usr/pkg/libreoffice4-4.4.4.3/program/libvcllo.so
 #8  0x00007f7ff080d65b in psp::PrintFontManager::initialize() () from /usr/pkg/libreoffice4-4.4.4.3/program/libvcllo.so
 #9  0x00007f7ff080f221 in psp::PrintFontManager::get() () from /usr/pkg/libreoffice4-4.4.4.3/program/libvcllo.so
 #10 0x00007f7fda44882a in GtkSalGraphics::updateSettings(AllSettings&) () from /usr/pkg/libreoffice4-4.4.4.3/program/libvclplug_gtklo.so
 #11 0x00007f7ff054ef24 in vcl::Window::ImplUpdateGlobalSettings(AllSettings&, bool) () from /usr/pkg/libreoffice4-4.4.4.3/program/libvcllo.so
 #12 0x00007f7ff05e0b41 in vcl::Window::ImplInit(vcl::Window*, long, SystemParentData*) ()
    from /usr/pkg/libreoffice4-4.4.4.3/program/libvcllo.so
 #13 0x00007f7ff057666e in Dialog::ImplInit(vcl::Window*, long) () from /usr/pkg/libreoffice4-4.4.4.3/program/libvcllo.so
 #14 0x00007f7ff0576b1a in Dialog::Dialog(vcl::Window*, long) () from /usr/pkg/libreoffice4-4.4.4.3/program/libvcllo.so
 #15 0x00007f7ff0589bd8 in MessageDialog::MessageDialog(vcl::Window*, rtl::OUString const&, VclMessageType, VclButtonsType, long) ()
    from /usr/pkg/libreoffice4-4.4.4.3/program/libvcllo.so
 #16 0x00007f7ff70317b6 in desktop::Lockfile_execWarning(desktop::Lockfile*) () from /usr/pkg/libreoffice4-4.4.4.3/program/libsofficeapp.so
 #17 0x00007f7ff3c1a970 in desktop::Lockfile::check(bool (*)(desktop::Lockfile*)) ()
    from /usr/pkg/libreoffice4-4.4.4.3/program/libdeploymentmisclo.so
 #18 0x00007f7ff7020140 in desktop::Desktop::Main() () from /usr/pkg/libreoffice4-4.4.4.3/program/libsofficeapp.so
 #19 0x00007f7ff07802a3 in ImplSVMain() () from /usr/pkg/libreoffice4-4.4.4.3/program/libvcllo.so
 #20 0x00007f7ff07802c3 in SVMain() () from /usr/pkg/libreoffice4-4.4.4.3/program/libvcllo.so
 #21 0x00007f7ff7036fcf in soffice_main () from /usr/pkg/libreoffice4-4.4.4.3/program/libsofficeapp.so
 #22 0x0000000000400aab in main ()
 (gdb)

From: Taylor R Campbell <riastradh@NetBSD.org>
To: gnats-bugs@NetBSD.org
Cc: gnats-admin@netbsd.org, netbsd-bugs@netbsd.org, Thomas Klausner <wiz@NetBSD.org>
Subject: Re: kern/49862 (drm-induced kernel panic)
Date: Tue, 28 Jul 2015 15:37:18 +0000

    Date: Tue, 28 Jul 2015 10:40:31 +0200
    From: Thomas Klausner <wiz@NetBSD.org>

    More details:
    The splash screen appears and gets to about 30 percent, then disappears.
    Before the patch, after the splash screen finishes its progress bar,
    the documents open, instead I get a core dump:

    wiz@yt:~> gdb /usr/pkg/libreoffice4-4.4.4.3/program/soffice.bin soffice.=
 bin.core
    [...]
    (gdb) bt
    #0  0x00007f7fe3c18eb9 in FcPatternObjectPosition () from /usr/pkg/lib/l=
 ibfontconfig.so.1
    #1  0x00007f7fe3c194aa in FcPatternObjectFindElt () from /usr/pkg/lib/li=
 bfontconfig.so.1

 Doesn't really look like a kernel or X bug to me -- looks like a
 vanilla bug in fontconfig, unless FcPatternObjectPosition is working
 on a graphics buffer or something.

 I don't suppose you can rebuild with debug symbols and try again, can
 you?

From: matthew green <mrg@eterna.com.au>
To: gnats-bugs@NetBSD.org
Cc: riastradh@NetBSD.org, gnats-admin@netbsd.org, netbsd-bugs@netbsd.org,
    Thomas Klausner <wiz@NetBSD.org>
Subject: re: kern/49862 (drm-induced kernel panic)
Date: Wed, 29 Jul 2015 08:21:02 +1000

 > From: Thomas Klausner <wiz@NetBSD.org>
 > To: gnats-bugs@NetBSD.org
 > Cc: 
 > Subject: Re: kern/49862 (drm-induced kernel panic)
 > Date: Tue, 28 Jul 2015 10:27:31 +0200
 > 
 >  On Tue, Jul 28, 2015 at 05:01:02AM +0000, David Holland wrote:
 >  > Synopsis: drm-induced kernel panic
 >  > 
 >  > State-Changed-From-To: open->feedback
 >  > State-Changed-By: dholland@NetBSD.org
 >  > State-Changed-When: Tue, 28 Jul 2015 05:01:02 +0000
 >  > State-Changed-Why:
 >  > after I found the second of these, my radeon no longer explodes with similar
 >  > symptoms, so there's a good chance we've found this one.
 >  
 >  Well, kind of.
 >  soffice from libreoffice4 doesn't complete its startup for me any longer.
 >  (xterm, firefox, gmpc still work).

 i think we should move this problem into another (new) PR as it
 seems like the drm problem is solved.

From: "Soren Jacobsen" <snj@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/49862 CVS commit: [netbsd-7] src/sys/external/bsd/drm2/ttm
Date: Thu, 30 Jul 2015 15:29:25 +0000

 Module Name:	src
 Committed By:	snj
 Date:		Thu Jul 30 15:29:25 UTC 2015

 Modified Files:
 	src/sys/external/bsd/drm2/ttm [netbsd-7]: ttm_bo_vm.c

 Log Message:
 Pull up following revision(s) (requested by riastradh in ticket #894):
 	sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revisions 1.9, 1.10
 Fix error branch: ttm_bo_unreserve on failure after ttm_bo_reserve.
 Tiny chance this will fix PR kern/49862 by not leaking a ww_mutex
 lock.
 --
 ttm_bo_unreserve in case of ttm_bo_uvm_fault_idle restart.
 Better chance of fixing PR kern/49862 by avoiding leaking a buffer
 ww_mutex lock.


 To generate a diff of this commit:
 cvs rdiff -u -r1.2.4.5 -r1.2.4.6 src/sys/external/bsd/drm2/ttm/ttm_bo_vm.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Soren Jacobsen" <snj@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/49862 CVS commit: [netbsd-7] src/sys/external/bsd/drm2
Date: Thu, 30 Jul 2015 15:50:16 +0000

 Module Name:	src
 Committed By:	snj
 Date:		Thu Jul 30 15:50:16 UTC 2015

 Modified Files:
 	src/sys/external/bsd/drm2/include/linux [netbsd-7]: ww_mutex.h
 	src/sys/external/bsd/drm2/linux [netbsd-7]: linux_ww_mutex.c

 Log Message:
 Pull up following revision(s) (requested by riastradh in ticket #907):
 	sys/external/bsd/drm2/linux/linux_ww_mutex.c: revision 1.2
 	sys/external/bsd/drm2/include/linux/ww_mutex.h: revision 1.11
 Adapt ww_mutex to use LOCKDEBUG.
 Should help track down PR 49862.


 To generate a diff of this commit:
 cvs rdiff -u -r1.4.4.3 -r1.4.4.4 \
     src/sys/external/bsd/drm2/include/linux/ww_mutex.h
 cvs rdiff -u -r1.1.2.2 -r1.1.2.3 \
     src/sys/external/bsd/drm2/linux/linux_ww_mutex.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->closed
State-Changed-By: wiz@NetBSD.org
State-Changed-When: Sat, 01 Aug 2015 08:35:54 +0000
State-Changed-Why:
Seems fixed.
Not thinking about the problems, I have opened a document in another
directory and libreoffice4 worked fine. Then I tried my test case
again, and it worked three times in a row.
Thank you!


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2014 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.