summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/selftests
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2019-10-13 12:45:09 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2019-10-14 09:26:07 +0100
commit280bc0cecb77240bf6be7f86a9da90e3451829b9 (patch)
tree9a08c71da52f015473117a15559431c063ba47f0 /drivers/gpu/drm/i915/selftests
parentc2fba936d3047fc5ea1458549daa19844ef243a4 (diff)
drm/i915/selftests: Fixup naked 64b divide
drivers/gpu/drm/i915/intel_memory_region.o: in function `igt_mock_contiguous': drivers/gpu/drm/i915/selftests/intel_memory_region.c:166: undefined reference to `__umoddi3' v2: promote target to u64 for consistency across all builds Reported-by: kbuild test robot <lkp@intel.com> Fixes: 2f0b97ca0211 ("drm/i915/region: support contiguous allocations") Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Matthew Auld <matthew.auld@intel.com> Reviewed-by: Matthew Auld <matthew.auld@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20191013114509.3405-1-chris@chris-wilson.co.uk
Diffstat (limited to 'drivers/gpu/drm/i915/selftests')
-rw-r--r--drivers/gpu/drm/i915/selftests/intel_memory_region.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/selftests/intel_memory_region.c b/drivers/gpu/drm/i915/selftests/intel_memory_region.c
index 4e44c81e8e5b..56091e7e599e 100644
--- a/drivers/gpu/drm/i915/selftests/intel_memory_region.c
+++ b/drivers/gpu/drm/i915/selftests/intel_memory_region.c
@@ -128,9 +128,9 @@ static int igt_mock_contiguous(void *arg)
LIST_HEAD(objects);
LIST_HEAD(holes);
I915_RND_STATE(prng);
- resource_size_t target;
resource_size_t total;
resource_size_t min;
+ u64 target;
int err = 0;
total = resource_size(&mem->region);
@@ -163,7 +163,9 @@ static int igt_mock_contiguous(void *arg)
igt_object_release(obj);
/* Internal fragmentation should not bleed into the object size */
- target = round_up(prandom_u32_state(&prng) % total, PAGE_SIZE);
+ target = i915_prandom_u64_state(&prng);
+ div64_u64_rem(target, total, &target);
+ target = round_up(target, PAGE_SIZE);
target = max_t(u64, PAGE_SIZE, target);
obj = igt_object_create(mem, &objects, target,
@@ -172,8 +174,8 @@ static int igt_mock_contiguous(void *arg)
return PTR_ERR(obj);
if (obj->base.size != target) {
- pr_err("%s obj->base.size(%llx) != target(%llx)\n", __func__,
- (u64)obj->base.size, (u64)target);
+ pr_err("%s obj->base.size(%zx) != target(%llx)\n", __func__,
+ obj->base.size, target);
err = -EINVAL;
goto err_close_objects;
}
@@ -236,7 +238,7 @@ static int igt_mock_contiguous(void *arg)
I915_BO_ALLOC_CONTIGUOUS);
if (should_fail != IS_ERR(obj)) {
pr_err("%s target allocation(%llx) mismatch\n",
- __func__, (u64)target);
+ __func__, target);
err = -EINVAL;
goto err_close_objects;
}