drm/i915/selftests: Improve handling of iomem around stolen
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 6 Jan 2021 12:39:37 +0000 (12:39 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 6 Jan 2021 15:37:56 +0000 (15:37 +0000)
Use memset_io() on the iomem, and silence sparse as we copy from the
iomem to normal system pages.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210106123939.18435-2-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gt/selftest_reset.c

index 5ec8d4e..b7befcf 100644 (file)
@@ -96,10 +96,10 @@ __igt_reset_stolen(struct intel_gt *gt,
                if (!__drm_mm_interval_first(&gt->i915->mm.stolen,
                                             page << PAGE_SHIFT,
                                             ((page + 1) << PAGE_SHIFT) - 1))
-                       memset32(s, STACK_MAGIC, PAGE_SIZE / sizeof(u32));
+                       memset_io(s, STACK_MAGIC, PAGE_SIZE);
 
-               in = s;
-               if (i915_memcpy_from_wc(tmp, s, PAGE_SIZE))
+               in = (void __force *)s;
+               if (i915_memcpy_from_wc(tmp, in, PAGE_SIZE))
                        in = tmp;
                crc[page] = crc32_le(0, in, PAGE_SIZE);
 
@@ -134,8 +134,8 @@ __igt_reset_stolen(struct intel_gt *gt,
                                      ggtt->error_capture.start,
                                      PAGE_SIZE);
 
-               in = s;
-               if (i915_memcpy_from_wc(tmp, s, PAGE_SIZE))
+               in = (void __force *)s;
+               if (i915_memcpy_from_wc(tmp, in, PAGE_SIZE))
                        in = tmp;
                x = crc32_le(0, in, PAGE_SIZE);