Module Name: src
Committed By: riastradh
Date: Fri Dec 24 15:07:47 UTC 2021
Modified Files:
src/sys/external/bsd/drm2/dist/drm/i915/gem: i915_gem_shmem.c
Log Message:
i915: Restore uao_set_pgfl for i915 gem objects, lost in the merge.
Needed to ensure we allocate paddrs that the GPU can cope with.
To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 \
src/sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_shmem.c
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/i915/gem/i915_gem_shmem.c
diff -u src/sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_shmem.c:1.11 src/sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_shmem.c:1.12
--- src/sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_shmem.c:1.11 Tue Dec 21 12:00:40 2021
+++ src/sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_shmem.c Fri Dec 24 15:07:47 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: i915_gem_shmem.c,v 1.11 2021/12/21 12:00:40 tnn Exp $ */
+/* $NetBSD: i915_gem_shmem.c,v 1.12 2021/12/24 15:07:47 riastradh Exp $ */
/*
* SPDX-License-Identifier: MIT
@@ -7,7 +7,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: i915_gem_shmem.c,v 1.11 2021/12/21 12:00:40 tnn Exp $");
+__KERNEL_RCSID(0, "$NetBSD: i915_gem_shmem.c,v 1.12 2021/12/24 15:07:47 riastradh Exp $");
#include <linux/pagevec.h>
#include <linux/swap.h>
@@ -572,6 +572,11 @@ create_shmem(struct intel_memory_region
if (ret)
goto fail;
+#ifdef __NetBSD__
+ __USE(mapping);
+ __USE(mask);
+ uao_set_pgfl(obj->base.filp, i915->ggtt.pgfl);
+#else
mask = GFP_HIGHUSER | __GFP_RECLAIMABLE;
if (IS_I965GM(i915) || IS_I965G(i915)) {
/* 965gm cannot relocate objects above 4GiB. */
@@ -579,9 +584,6 @@ create_shmem(struct intel_memory_region
mask |= __GFP_DMA32;
}
-#ifdef __NetBSD__
- __USE(mapping);
-#else
mapping = obj->base.filp->f_mapping;
mapping_set_gfp_mask(mapping, mask);
GEM_BUG_ON(!(mapping_gfp_mask(mapping) & __GFP_RECLAIM));