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));