Commit c551087d authored by Guillaume Tucker's avatar Guillaume Tucker Committed by Chris Wilson

i915/gem_ctx_sseu: Fix 32-bit build

This fixes a compiler warning treated as an error when building for
32-bit architectures since their pointer size does not match the size
of drm_i915_gem_context_param.value which is 64 bits:

  CC       i915/gem_ctx_sseu.o
  i915/gem_ctx_sseu.c: In function ‘test_ggtt_args’:
  i915/gem_ctx_sseu.c:384:9: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
    munmap((void *)arg.value, 4096);

It was found while building for arm with gcc 6.3.0 and I suspect the
same problem would arise for i386 or other 32-bit architectures.  The
uintptr_t type is by definition an unsigned integer of the same length
as a pointer on a given architecture, so this should fix the problem
for all architectures up to 64 bits.
Signed-off-by: Guillaume Tucker's avatarGuillaume Tucker <guillaume.tucker@collabora.com>
Reviewed-by: Chris Wilson's avatarChris Wilson <chris@chris-wilson.co.uk>
parent e5eb4568
Pipeline #18952 passed with stages
in 10 minutes and 27 seconds
......@@ -381,7 +381,7 @@ test_ggtt_args(int fd)
igt_assert_eq(__gem_context_get_param(fd, &arg), 0);
igt_assert_eq(__gem_context_set_param(fd, &arg), 0);
munmap((void *)arg.value, 4096);
munmap((void *)(uintptr_t)arg.value, 4096);
gem_close(fd, bo);
gem_context_destroy(fd, arg.ctx_id);
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment