Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/external/bsd/drm2/ttm We dropped vmobjlock, so reacquire...



details:   https://anonhg.NetBSD.org/src/rev/220f2bb818e1
branches:  trunk
changeset: 802332:220f2bb818e1
user:      riastradh <riastradh%NetBSD.org@localhost>
date:      Wed Sep 10 18:24:16 2014 +0000

description:
We dropped vmobjlock, so reacquire it before uvmfault_unlockall.

diffstat:

 sys/external/bsd/drm2/ttm/ttm_bo_vm.c |  10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)

diffs (32 lines):

diff -r b2e09b07eec7 -r 220f2bb818e1 sys/external/bsd/drm2/ttm/ttm_bo_vm.c
--- a/sys/external/bsd/drm2/ttm/ttm_bo_vm.c     Wed Sep 10 14:28:02 2014 +0000
+++ b/sys/external/bsd/drm2/ttm/ttm_bo_vm.c     Wed Sep 10 18:24:16 2014 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: ttm_bo_vm.c,v 1.4 2014/08/20 13:48:08 riastradh Exp $  */
+/*     $NetBSD: ttm_bo_vm.c,v 1.5 2014/09/10 18:24:16 riastradh Exp $  */
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ttm_bo_vm.c,v 1.4 2014/08/20 13:48:08 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ttm_bo_vm.c,v 1.5 2014/09/10 18:24:16 riastradh Exp $");
 
 #include <sys/types.h>
 
@@ -107,9 +107,11 @@
                if (ret != -EBUSY)
                        goto out0;
                /*
-                * It's currently locked.  Unlock the fault, wait for
-                * it, and start over.
+                * It's currently locked.  Unlock the fault (requires
+                * relocking uobj's vmobjlock first), wait for it, and
+                * start over.
                 */
+               mutex_enter(uobj->vmobjlock);
                uvmfault_unlockall(ufi, ufi->entry->aref.ar_amap, uobj);
                (void)ttm_bo_wait_unreserved(bo);
                return -ERESTART;



Home | Main Index | Thread Index | Old Index