Source-Changes-HG archive

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

[src/riastradh-drm2]: src/sys/external/bsd/drm2/drm Little reference counting...



details:   https://anonhg.NetBSD.org/src/rev/37adc1963e0e
branches:  riastradh-drm2
changeset: 788626:37adc1963e0e
user:      riastradh <riastradh%NetBSD.org@localhost>
date:      Wed Jan 22 16:40:53 2014 +0000

description:
Little reference counting fix in drm_mmap.

diffstat:

 sys/external/bsd/drm2/drm/drm_drv.c    |  8 +++++---
 sys/external/bsd/drm2/drm/drm_gem_vm.c |  6 +++---
 2 files changed, 8 insertions(+), 6 deletions(-)

diffs (57 lines):

diff -r 563fe4137c88 -r 37adc1963e0e sys/external/bsd/drm2/drm/drm_drv.c
--- a/sys/external/bsd/drm2/drm/drm_drv.c       Wed Jan 22 16:40:44 2014 +0000
+++ b/sys/external/bsd/drm2/drm/drm_drv.c       Wed Jan 22 16:40:53 2014 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: drm_drv.c,v 1.1.2.33 2014/01/22 16:40:44 riastradh Exp $       */
+/*     $NetBSD: drm_drv.c,v 1.1.2.34 2014/01/22 16:40:53 riastradh Exp $       */
 
 /*-
  * Copyright (c) 2013 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_drv.c,v 1.1.2.33 2014/01/22 16:40:44 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_drv.c,v 1.1.2.34 2014/01/22 16:40:53 riastradh Exp $");
 
 #include <sys/param.h>
 #include <sys/types.h>
@@ -924,8 +924,10 @@
        /* XXX errno NetBSD->Linux */
        ret = -uvm_map(&curproc->p_vmspace->vm_map, &vaddr, size, uobj, offset,
            align, uvmflag);
-       if (ret)
+       if (ret) {
+               (*uobj->pgops->pgo_detach)(uobj);
                return ret;
+       }
 
        /* Success!  */
        args->dnm_addr = (void *)vaddr;
diff -r 563fe4137c88 -r 37adc1963e0e sys/external/bsd/drm2/drm/drm_gem_vm.c
--- a/sys/external/bsd/drm2/drm/drm_gem_vm.c    Wed Jan 22 16:40:44 2014 +0000
+++ b/sys/external/bsd/drm2/drm/drm_gem_vm.c    Wed Jan 22 16:40:53 2014 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: drm_gem_vm.c,v 1.1.2.4 2014/01/22 16:40:44 riastradh Exp $     */
+/*     $NetBSD: drm_gem_vm.c,v 1.1.2.5 2014/01/22 16:40:53 riastradh Exp $     */
 
 /*-
  * Copyright (c) 2013 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_gem_vm.c,v 1.1.2.4 2014/01/22 16:40:44 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_gem_vm.c,v 1.1.2.5 2014/01/22 16:40:53 riastradh Exp $");
 
 #include <sys/types.h>
 
@@ -107,7 +107,7 @@
        KASSERT(obj->dev == dev);
 
        /* Success!  */
-       drm_gem_object_reference(obj); /* XXX Locking?  */
+       drm_gem_object_reference(obj);
        *uobjp = &obj->gemo_uvmobj;
        return 0;
 }



Home | Main Index | Thread Index | Old Index