Module Name:    src
Committed By:   riastradh
Date:           Mon Aug 27 07:19:02 UTC 2018

Modified Files:
        src/sys/external/bsd/drm2/dist/drm: drm_gem.c
        src/sys/external/bsd/drm2/dist/drm/i915: i915_drv.h i915_gem.c
            i915_gem_render_state.c i915_gem_shrinker.c
        src/sys/external/bsd/drm2/dist/drm/nouveau: nouveau_bo.c nouveau_gem.c
        src/sys/external/bsd/drm2/dist/include/drm: drm_gem.h

Log Message:
Rename drm_gem_object::gemo_shm_uao -> drm_gem_object::filp.

The Linux member that is basically analogous to this is named so,
which means we can eliminate a few diffs this way.


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/sys/external/bsd/drm2/dist/drm/drm_gem.c
cvs rdiff -u -r1.18 -r1.19 src/sys/external/bsd/drm2/dist/drm/i915/i915_drv.h
cvs rdiff -u -r1.42 -r1.43 src/sys/external/bsd/drm2/dist/drm/i915/i915_gem.c
cvs rdiff -u -r1.4 -r1.5 \
    src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_render_state.c
cvs rdiff -u -r1.5 -r1.6 \
    src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_shrinker.c
cvs rdiff -u -r1.8 -r1.9 \
    src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_bo.c
cvs rdiff -u -r1.5 -r1.6 \
    src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c
cvs rdiff -u -r1.2 -r1.3 src/sys/external/bsd/drm2/dist/include/drm/drm_gem.h

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

Modified files:

Index: src/sys/external/bsd/drm2/dist/drm/drm_gem.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_gem.c:1.7 src/sys/external/bsd/drm2/dist/drm/drm_gem.c:1.8
--- src/sys/external/bsd/drm2/dist/drm/drm_gem.c:1.7	Mon Aug 27 04:58:19 2018
+++ src/sys/external/bsd/drm2/dist/drm/drm_gem.c	Mon Aug 27 07:19:01 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_gem.c,v 1.7 2018/08/27 04:58:19 riastradh Exp $	*/
+/*	$NetBSD: drm_gem.c,v 1.8 2018/08/27 07:19:01 riastradh Exp $	*/
 
 /*
  * Copyright © 2008 Intel Corporation
@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_gem.c,v 1.7 2018/08/27 04:58:19 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_gem.c,v 1.8 2018/08/27 07:19:01 riastradh Exp $");
 
 #include <linux/types.h>
 #include <linux/slab.h>
@@ -165,14 +165,14 @@ int drm_gem_object_init(struct drm_devic
 	 * A uao may not have size 0, but a gem object may.  Allocate a
 	 * spurious page so we needn't teach uao how to have size 0.
 	 */
-	obj->gemo_shm_uao = uao_create(MAX(size, PAGE_SIZE), 0);
+	obj->filp = uao_create(MAX(size, PAGE_SIZE), 0);
 	/*
 	 * XXX This is gross.  We ought to do it the other way around:
 	 * set the uao to have the main uvm object's lock.  However,
 	 * uvm_obj_setlock is not safe on uvm_aobjs.
 	 */
-	mutex_obj_hold(obj->gemo_shm_uao->vmobjlock);
-	uvm_obj_setlock(&obj->gemo_uvmobj, obj->gemo_shm_uao->vmobjlock);
+	mutex_obj_hold(obj->filp->vmobjlock);
+	uvm_obj_setlock(&obj->gemo_uvmobj, obj->filp->vmobjlock);
 #else
 	filp = shmem_file_setup("drm mm object", size, VM_NORESERVE);
 	if (IS_ERR(filp))
@@ -202,7 +202,7 @@ void drm_gem_private_object_init(struct 
 
 	obj->dev = dev;
 #ifdef __NetBSD__
-	obj->gemo_shm_uao = NULL;
+	obj->filp = NULL;
 	KASSERT(drm_core_check_feature(dev, DRIVER_GEM));
 	KASSERT(dev->driver->gem_uvm_ops != NULL);
 	uvm_obj_init(&obj->gemo_uvmobj, dev->driver->gem_uvm_ops, true, 1);
@@ -537,7 +537,7 @@ drm_gem_get_pages(struct drm_gem_object 
 
 	TAILQ_INIT(&pglist);
 	/* XXX errno NetBSD->Linux */
-	ret = -uvm_obj_wirepages(obj->gemo_shm_uao, 0, obj->size, &pglist);
+	ret = -uvm_obj_wirepages(obj->filp, 0, obj->size, &pglist);
 	if (ret)
 		goto fail1;
 
@@ -618,7 +618,7 @@ drm_gem_put_pages(struct drm_gem_object 
 			pages[i]->p_vmp.flags &= ~PG_CLEAN;
 	}
 
-	uvm_obj_unwirepages(obj->gemo_shm_uao, 0, obj->size);
+	uvm_obj_unwirepages(obj->filp, 0, obj->size);
 }
 #else
 void drm_gem_put_pages(struct drm_gem_object *obj, struct page **pages,
@@ -862,8 +862,8 @@ drm_gem_object_release(struct drm_gem_ob
 
 #ifdef __NetBSD__
 	drm_vma_node_destroy(&obj->vma_node);
-	if (obj->gemo_shm_uao)
-		uao_detach(obj->gemo_shm_uao);
+	if (obj->filp)
+		uao_detach(obj->filp);
 	uvm_obj_destroy(&obj->gemo_uvmobj, true);
 #else
 	if (obj->filp)

Index: src/sys/external/bsd/drm2/dist/drm/i915/i915_drv.h
diff -u src/sys/external/bsd/drm2/dist/drm/i915/i915_drv.h:1.18 src/sys/external/bsd/drm2/dist/drm/i915/i915_drv.h:1.19
--- src/sys/external/bsd/drm2/dist/drm/i915/i915_drv.h:1.18	Mon Aug 27 07:17:35 2018
+++ src/sys/external/bsd/drm2/dist/drm/i915/i915_drv.h	Mon Aug 27 07:19:01 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: i915_drv.h,v 1.18 2018/08/27 07:17:35 riastradh Exp $	*/
+/*	$NetBSD: i915_drv.h,v 1.19 2018/08/27 07:19:01 riastradh Exp $	*/
 
 /* i915_drv.h -- Private header for the I915 driver -*- linux-c -*-
  */
@@ -2956,9 +2956,9 @@ i915_gem_object_get_page(struct drm_i915
 		 * lock to prevent them from disappearing.
 		 */
 		KASSERT(obj->pages != NULL);
-		mutex_enter(obj->base.gemo_shm_uao->vmobjlock);
-		page = uvm_pagelookup(obj->base.gemo_shm_uao, ptoa(n));
-		mutex_exit(obj->base.gemo_shm_uao->vmobjlock);
+		mutex_enter(obj->base.filp->vmobjlock);
+		page = uvm_pagelookup(obj->base.filp, ptoa(n));
+		mutex_exit(obj->base.filp->vmobjlock);
 	}
 	KASSERT(page != NULL);
 	return container_of(page, struct page, p_vmp);

Index: src/sys/external/bsd/drm2/dist/drm/i915/i915_gem.c
diff -u src/sys/external/bsd/drm2/dist/drm/i915/i915_gem.c:1.42 src/sys/external/bsd/drm2/dist/drm/i915/i915_gem.c:1.43
--- src/sys/external/bsd/drm2/dist/drm/i915/i915_gem.c:1.42	Mon Aug 27 07:17:58 2018
+++ src/sys/external/bsd/drm2/dist/drm/i915/i915_gem.c	Mon Aug 27 07:19:01 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: i915_gem.c,v 1.42 2018/08/27 07:17:58 riastradh Exp $	*/
+/*	$NetBSD: i915_gem.c,v 1.43 2018/08/27 07:19:01 riastradh Exp $	*/
 
 /*
  * Copyright © 2008-2015 Intel Corporation
@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: i915_gem.c,v 1.42 2018/08/27 07:17:58 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: i915_gem.c,v 1.43 2018/08/27 07:19:01 riastradh Exp $");
 
 #ifdef __NetBSD__
 #if 0				/* XXX uvmhist option?  */
@@ -213,8 +213,8 @@ i915_gem_object_get_pages_phys(struct dr
 		struct pglist pages = TAILQ_HEAD_INITIALIZER(pages);
 		int ret;
 		/* XXX errno NetBSD->Linux */
-		ret = -uvm_obj_wirepages(obj->base.gemo_shm_uao,
-		    i*PAGE_SIZE, (i + 1)*PAGE_SIZE, &pages);
+		ret = -uvm_obj_wirepages(obj->base.filp, i*PAGE_SIZE,
+		    (i + 1)*PAGE_SIZE, &pages);
 		if (ret)
 			return ret;
 		page = container_of(TAILQ_FIRST(&pages), struct page, p_vmp);
@@ -230,8 +230,8 @@ i915_gem_object_get_pages_phys(struct dr
 		kunmap_atomic(src);
 
 #ifdef __NetBSD__
-		uvm_obj_unwirepages(obj->base.gemo_shm_uao,
-		    i*PAGE_SIZE, (i + 1)*PAGE_SIZE);
+		uvm_obj_unwirepages(obj->base.filp, i*PAGE_SIZE,
+		    (i + 1)*PAGE_SIZE);
 #else
 		page_cache_release(page);
 #endif
@@ -297,7 +297,7 @@ i915_gem_object_put_pages_phys(struct dr
 #ifdef __NetBSD__
 			struct pglist pages = TAILQ_HEAD_INITIALIZER(pages);
 			/* XXX errno NetBSD->Linux */
-			ret = -uvm_obj_wirepages(obj->base.gemo_shm_uao,
+			ret = -uvm_obj_wirepages(obj->base.filp,
 			    i*PAGE_SIZE, (i + 1)*PAGE_SIZE, &pages);
 			if (ret)
 				continue;
@@ -313,8 +313,8 @@ i915_gem_object_put_pages_phys(struct dr
 #ifdef __NetBSD__
 			page->p_vmp.flags &= ~PG_CLEAN;
 			/* XXX mark page accessed */
-			uvm_obj_unwirepages(obj->base.gemo_shm_uao,
-			    i*PAGE_SIZE, (i+1)*PAGE_SIZE);
+			uvm_obj_unwirepages(obj->base.filp, i*PAGE_SIZE,
+			    (i+1)*PAGE_SIZE);
 #else
 			set_page_dirty(page);
 			if (obj->madv == I915_MADV_WILLNEED)
@@ -380,13 +380,8 @@ i915_gem_object_attach_phys(struct drm_i
 	if (obj->madv != I915_MADV_WILLNEED)
 		return -EFAULT;
 
-#ifdef __NetBSD__
-	if (obj->base.gemo_shm_uao == NULL)
-		return -EINVAL;
-#else
 	if (obj->base.filp == NULL)
 		return -EINVAL;
-#endif
 
 	ret = drop_pages(obj);
 	if (ret)
@@ -587,13 +582,8 @@ int i915_gem_obj_prepare_shmem_read(stru
 
 	*needs_clflush = 0;
 
-#ifdef __NetBSD__
-	if (obj->base.gemo_shm_uao == NULL)
-		return -EINVAL;
-#else
 	if (!obj->base.filp)
 		return -EINVAL;
-#endif
 
 	if (!(obj->base.read_domains & I915_GEM_DOMAIN_CPU)) {
 		/* If we're not in the cpu read domain, set ourself into the gtt
@@ -839,18 +829,10 @@ i915_gem_pread_ioctl(struct drm_device *
 	/* prime objects have no backing filp to GEM pread/pwrite
 	 * pages from.
 	 */
-#ifdef __NetBSD__
-	/* Also stolen objects.  */
-	if (obj->base.gemo_shm_uao == NULL) {
-		ret = -EINVAL;
-		goto out;
-	}
-#else
 	if (!obj->base.filp) {
 		ret = -EINVAL;
 		goto out;
 	}
-#endif
 
 	trace_i915_gem_object_pread(obj, args->offset, args->size);
 
@@ -1225,18 +1207,10 @@ i915_gem_pwrite_ioctl(struct drm_device 
 	/* prime objects have no backing filp to GEM pread/pwrite
 	 * pages from.
 	 */
-#ifdef __NetBSD__
-	/* Also stolen objects.  */
-	if (obj->base.gemo_shm_uao == NULL) {
-		ret = -EINVAL;
-		goto out;
-	}
-#else
 	if (!obj->base.filp) {
 		ret = -EINVAL;
 		goto out;
 	}
-#endif
 
 	trace_i915_gem_object_pwrite(obj, args->offset, args->size);
 
@@ -1975,18 +1949,10 @@ i915_gem_mmap_ioctl(struct drm_device *d
 	/* prime objects have no backing filp to GEM mmap
 	 * pages from.
 	 */
-#ifdef __NetBSD__
-	/* Also stolen objects (XXX can we get them here?)  */
-	if (obj->gemo_shm_uao == NULL) {
-		drm_gem_object_unreference_unlocked(obj);
-		return -EINVAL;
-	}
-#else
 	if (!obj->filp) {
 		drm_gem_object_unreference_unlocked(obj);
 		return -EINVAL;
 	}
-#endif
 
 #ifdef __NetBSD__
 	addr = (*curproc->p_emul->e_vm_default_addr)(curproc,
@@ -1994,7 +1960,7 @@ i915_gem_mmap_ioctl(struct drm_device *d
 	    curproc->p_vmspace->vm_map.flags & VM_MAP_TOPDOWN);
 	/* XXX errno NetBSD->Linux */
 	ret = -uvm_map(&curproc->p_vmspace->vm_map, &addr, args->size,
-	    obj->gemo_shm_uao, args->offset, 0,
+	    obj->filp, args->offset, 0,
 	    UVM_MAPFLAG((VM_PROT_READ | VM_PROT_WRITE),
 		(VM_PROT_READ | VM_PROT_WRITE), UVM_INH_COPY, UVM_ADV_NORMAL,
 		0));
@@ -2002,7 +1968,7 @@ i915_gem_mmap_ioctl(struct drm_device *d
 		drm_gem_object_unreference_unlocked(obj);
 		return ret;
 	}
-	uao_reference(obj->gemo_shm_uao);
+	uao_reference(obj->filp);
 	drm_gem_object_unreference_unlocked(obj);
 #else
 	addr = vm_mmap(obj->filp, 0, args->size,
@@ -2590,12 +2556,12 @@ i915_gem_object_truncate(struct drm_i915
 {
 	i915_gem_object_free_mmap_offset(obj);
 
-#ifdef __NetBSD__
-	if (obj->base.gemo_shm_uao == NULL)
+	if (obj->base.filp == NULL)
 		return;
 
+#ifdef __NetBSD__
 	{
-		struct uvm_object *const uobj = obj->base.gemo_shm_uao;
+		struct uvm_object *const uobj = obj->base.filp;
 
 		if (uobj != NULL) {
 			/* XXX Calling pgo_put like this is bogus.  */
@@ -2605,9 +2571,6 @@ i915_gem_object_truncate(struct drm_i915
 		}
 	}
 #else
-	if (obj->base.filp == NULL)
-		return;
-
 	/* Our goal here is to return as much of the memory as
 	 * is possible back to the system as we are called from OOM.
 	 * To do this we must instruct the shmfs to drop all of its
@@ -2677,7 +2640,7 @@ i915_gem_object_put_pages_gtt(struct drm
 	}
 	obj->dirty = 0;
 
-	uvm_obj_unwirepages(obj->base.gemo_shm_uao, 0, obj->base.size);
+	uvm_obj_unwirepages(obj->base.filp, 0, obj->base.size);
 	bus_dmamap_destroy(dev->dmat, obj->pages);
 #else
 	struct sg_page_iter sg_iter;
@@ -2770,7 +2733,7 @@ i915_gem_object_get_pages_gtt(struct drm
 		goto fail0;
 
 	/* XXX errno NetBSD->Linux */
-	ret = -uvm_obj_wirepages(obj->base.gemo_shm_uao, 0, obj->base.size,
+	ret = -uvm_obj_wirepages(obj->base.filp, 0, obj->base.size,
 	    &obj->pageq);
 	if (ret)		/* XXX Try purge, shrink.  */
 		goto fail1;
@@ -2813,7 +2776,7 @@ i915_gem_object_get_pages_gtt(struct drm
 
 fail3: __unused
 	i915_gem_gtt_finish_object(obj);
-fail2:	uvm_obj_unwirepages(obj->base.gemo_shm_uao, 0, obj->base.size);
+fail2:	uvm_obj_unwirepages(obj->base.filp, 0, obj->base.size);
 fail1:	bus_dmamap_destroy(dev->dmat, obj->pages);
 	obj->pages = NULL;
 fail0:	KASSERT(ret);
@@ -5016,7 +4979,7 @@ struct drm_i915_gem_object *i915_gem_all
 	}
 
 #ifdef __NetBSD__
-	uao_set_pgfl(obj->base.gemo_shm_uao, dev_priv->gtt.pgfl);
+	uao_set_pgfl(obj->base.filp, dev_priv->gtt.pgfl);
 #else
 	mask = GFP_HIGHUSER | __GFP_RECLAIMABLE;
 	if (IS_CRESTLINE(dev) || IS_BROADWATER(dev)) {
@@ -5902,7 +5865,7 @@ i915_gem_object_create_from_data(struct 
 	i915_gem_object_pin_pages(obj);
 #ifdef __NetBSD__
 	/* XXX errno NetBSD->Linux */
-	ret = -ubc_uiomove(obj->base.gemo_shm_uao, &uio, size, UVM_ADV_NORMAL,
+	ret = -ubc_uiomove(obj->base.filp, &uio, size, UVM_ADV_NORMAL,
 	    UBC_WRITE);
 	if (ret)
 		goto fail;

Index: src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_render_state.c
diff -u src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_render_state.c:1.4 src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_render_state.c:1.5
--- src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_render_state.c:1.4	Mon Aug 27 07:17:35 2018
+++ src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_render_state.c	Mon Aug 27 07:19:01 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: i915_gem_render_state.c,v 1.4 2018/08/27 07:17:35 riastradh Exp $	*/
+/*	$NetBSD: i915_gem_render_state.c,v 1.5 2018/08/27 07:19:01 riastradh Exp $	*/
 
 /*
  * Copyright © 2014 Intel Corporation
@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: i915_gem_render_state.c,v 1.4 2018/08/27 07:17:35 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: i915_gem_render_state.c,v 1.5 2018/08/27 07:19:01 riastradh Exp $");
 
 #include "i915_drv.h"
 #include "intel_renderstate.h"
@@ -114,8 +114,8 @@ static int render_state_setup(struct ren
 
 #ifdef __NetBSD__
 	/* XXX errno NetBSD->Linux */
-	ret = -uvm_map(kernel_map, &kva, PAGE_SIZE, so->obj->base.gemo_shm_uao,
-	    0, sizeof(*d), UVM_MAPFLAG(UVM_PROT_W, UVM_PROT_W, UVM_INH_NONE,
+	ret = -uvm_map(kernel_map, &kva, PAGE_SIZE, so->obj->base.filp, 0,
+	    sizeof(*d), UVM_MAPFLAG(UVM_PROT_W, UVM_PROT_W, UVM_INH_NONE,
 		UVM_ADV_NORMAL, 0));
 	if (ret)
 		return ret;

Index: src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_shrinker.c
diff -u src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_shrinker.c:1.5 src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_shrinker.c:1.6
--- src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_shrinker.c:1.5	Mon Aug 27 07:18:47 2018
+++ src/sys/external/bsd/drm2/dist/drm/i915/i915_gem_shrinker.c	Mon Aug 27 07:19:01 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: i915_gem_shrinker.c,v 1.5 2018/08/27 07:18:47 riastradh Exp $	*/
+/*	$NetBSD: i915_gem_shrinker.c,v 1.6 2018/08/27 07:19:01 riastradh Exp $	*/
 
 /*
  * Copyright © 2008-2015 Intel Corporation
@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: i915_gem_shrinker.c,v 1.5 2018/08/27 07:18:47 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: i915_gem_shrinker.c,v 1.6 2018/08/27 07:19:01 riastradh Exp $");
 
 #include <linux/oom.h>
 #include <linux/shmem_fs.h>
@@ -317,11 +317,7 @@ i915_gem_shrinker_oom(struct notifier_bl
 	 */
 	unbound = bound = pinned = 0;
 	list_for_each_entry(obj, &dev_priv->mm.unbound_list, global_list) {
-#ifdef __NetBSD__
-		if (!obj->base.gemo_shm_uao)
-#else
 		if (!obj->base.filp) /* not backed by a freeable object */
-#endif
 			continue;
 
 		if (obj->pages_pin_count)
@@ -330,11 +326,7 @@ i915_gem_shrinker_oom(struct notifier_bl
 			unbound += obj->base.size;
 	}
 	list_for_each_entry(obj, &dev_priv->mm.bound_list, global_list) {
-#ifdef __NetBSD__
-		if (!obj->base.gemo_shm_uao)
-#else
 		if (!obj->base.filp)
-#endif
 			continue;
 
 		if (obj->pages_pin_count)

Index: src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_bo.c
diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_bo.c:1.8 src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_bo.c:1.9
--- src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_bo.c:1.8	Mon Aug 27 04:58:24 2018
+++ src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_bo.c	Mon Aug 27 07:19:01 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: nouveau_bo.c,v 1.8 2018/08/27 04:58:24 riastradh Exp $	*/
+/*	$NetBSD: nouveau_bo.c,v 1.9 2018/08/27 07:19:01 riastradh Exp $	*/
 
 /*
  * Copyright 2007 Dave Airlied
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: nouveau_bo.c,v 1.8 2018/08/27 04:58:24 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nouveau_bo.c,v 1.9 2018/08/27 07:19:01 riastradh Exp $");
 
 #include <linux/dma-mapping.h>
 #include <linux/swiotlb.h>
@@ -137,11 +137,7 @@ nouveau_bo_del_ttm(struct ttm_buffer_obj
 	struct drm_device *dev = drm->dev;
 	struct nouveau_bo *nvbo = nouveau_bo(bo);
 
-#ifdef __NetBSD__
-	if (unlikely(nvbo->gem.gemo_shm_uao))
-#else
 	if (unlikely(nvbo->gem.filp))
-#endif
 		DRM_ERROR("bo %p still attached to GEM object\n", bo);
 	WARN_ON(nvbo->pin_refcnt > 0);
 	nv10_bo_put_tile_region(dev, nvbo->tile, NULL);

Index: src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c
diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c:1.5 src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c:1.6
--- src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c:1.5	Mon Aug 27 04:58:24 2018
+++ src/sys/external/bsd/drm2/dist/drm/nouveau/nouveau_gem.c	Mon Aug 27 07:19:01 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: nouveau_gem.c,v 1.5 2018/08/27 04:58:24 riastradh Exp $	*/
+/*	$NetBSD: nouveau_gem.c,v 1.6 2018/08/27 07:19:01 riastradh Exp $	*/
 
 /*
  * Copyright (C) 2008 Ben Skeggs.
@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: nouveau_gem.c,v 1.5 2018/08/27 04:58:24 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nouveau_gem.c,v 1.6 2018/08/27 07:19:01 riastradh Exp $");
 
 #include <linux/err.h>		/* XXX */
 
@@ -60,12 +60,7 @@ nouveau_gem_object_del(struct drm_gem_ob
 	drm_gem_object_release(gem);
 
 	/* reset filp so nouveau_bo_del_ttm() can test for it */
-#ifdef __NetBSD__
-	/* XXX Whattakludge!  */
-	gem->gemo_shm_uao = NULL;
-#else
 	gem->filp = NULL;
-#endif
 	ttm_bo_unref(&bo);
 
 	pm_runtime_mark_last_busy(dev);

Index: src/sys/external/bsd/drm2/dist/include/drm/drm_gem.h
diff -u src/sys/external/bsd/drm2/dist/include/drm/drm_gem.h:1.2 src/sys/external/bsd/drm2/dist/include/drm/drm_gem.h:1.3
--- src/sys/external/bsd/drm2/dist/include/drm/drm_gem.h:1.2	Mon Aug 27 04:58:37 2018
+++ src/sys/external/bsd/drm2/dist/include/drm/drm_gem.h	Mon Aug 27 07:19:01 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_gem.h,v 1.2 2018/08/27 04:58:37 riastradh Exp $	*/
+/*	$NetBSD: drm_gem.h,v 1.3 2018/08/27 07:19:01 riastradh Exp $	*/
 
 #ifndef __DRM_GEM_H__
 #define __DRM_GEM_H__
@@ -60,7 +60,7 @@ struct drm_gem_object {
 
 #ifdef __NetBSD__
 	/* UVM anonymous object for shared memory mappings.  */
-	struct uvm_object *gemo_shm_uao;
+	struct uvm_object *filp;
 
 	/* UVM object with custom pager ops for device memory mappings.  */
 	struct uvm_object gemo_uvmobj;

Reply via email to