drm/i915/selftests: Use igt_random_offset()
authorChris Wilson <chris@chris-wilson.co.uk>
Thu, 12 Mar 2020 15:47:08 +0000 (15:47 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Thu, 12 Mar 2020 20:41:50 +0000 (20:41 +0000)
Switch igt_vm_isolation() to using igt_random_offset().

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: Akeem G Abodunrin <akeem.g.abodunrin@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200312154708.1720-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c

index 77c7e65..54b86cf 100644 (file)
@@ -1809,7 +1809,6 @@ static int igt_vm_isolation(void *arg)
 
        vm_total = ctx_vm(ctx_a)->total;
        GEM_BUG_ON(ctx_vm(ctx_b)->total != vm_total);
-       vm_total -= I915_GTT_PAGE_SIZE;
 
        count = 0;
        num_engines = 0;
@@ -1828,10 +1827,10 @@ static int igt_vm_isolation(void *arg)
                        u32 value = 0xc5c5c5c5;
                        u64 offset;
 
-                       div64_u64_rem(i915_prandom_u64_state(&prng),
-                                     vm_total, &offset);
-                       offset = round_down(offset, alignof_dword);
-                       offset += I915_GTT_PAGE_SIZE;
+                       /* Leave enough space at offset 0 for the batch */
+                       offset = igt_random_offset(&prng,
+                                                  I915_GTT_PAGE_SIZE, vm_total,
+                                                  sizeof(u32), alignof_dword);
 
                        err = write_to_scratch(ctx_a, engine,
                                               offset, 0xdeadbeef);