[PATCH] drm/i915: Call page_address() on page acquired with GFP_KERNEL flag

From: Sumitra Sharma
Date: Wed Jun 14 2023 - 08:36:27 EST


Pages allocated with GFP_KERNEL cannot come from Highmem.
That is why there is no need to call kmap() on them.

Therefore, don't call kmap() on the page coming from
vma_res->bi.pages using for_each_sgt_page() in
i915_vma_coredump_create().

Use a plain page_address() to get the kernel address instead.

Signed-off-by: Sumitra Sharma <sumitraartsy@xxxxxxxxx>
---
drivers/gpu/drm/i915/i915_gpu_error.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c
index f020c0086fbc..6f51cb4fc55c 100644
--- a/drivers/gpu/drm/i915/i915_gpu_error.c
+++ b/drivers/gpu/drm/i915/i915_gpu_error.c
@@ -1164,9 +1164,8 @@ i915_vma_coredump_create(const struct intel_gt *gt,

drm_clflush_pages(&page, 1);

- s = kmap(page);
+ s = page_address(page);
ret = compress_page(compress, s, dst, false);
- kunmap(page);

drm_clflush_pages(&page, 1);

--
2.25.1