drm/i915/selftests: Filter out both physical address swizzles
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 9 Jul 2018 19:49:15 +0000 (20:49 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 10 Jul 2018 08:53:41 +0000 (09:53 +0100)
In our swizzling selftests, we cannot predict the physical address of
the target page (at least not simply!) and so skip bit17 swizzles.
However, there are two bit17 swizzle modes and we only skipped one, with
the second being observed on the lab gdg causing the test to fail,
as soon as we hit a page with bit17 set in its address.

Testcase: igt/drv_selftest/live_objects #gdg
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180709194915.5789-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/selftests/i915_gem_object.c

index d77acf4cc4397df9358252b12b4468bcd2fe794d..c69cbd5aed527940fdffc4e96c3645ddd77ae708 100644 (file)
@@ -375,7 +375,8 @@ static int igt_partial_tiling(void *arg)
                }
 
                GEM_BUG_ON(tile.swizzle == I915_BIT_6_SWIZZLE_UNKNOWN);
-               if (tile.swizzle == I915_BIT_6_SWIZZLE_9_10_17)
+               if (tile.swizzle == I915_BIT_6_SWIZZLE_9_17 ||
+                   tile.swizzle == I915_BIT_6_SWIZZLE_9_10_17)
                        continue;
 
                if (INTEL_GEN(i915) <= 2) {