summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRob Herring <[email protected]>2017-05-23 14:43:30 -0500
committerRob Herring <[email protected]>2017-05-25 15:01:28 -0500
commit0dabb9d9fa389ad809351ff3de2c898ae3a22bbf (patch)
tree19d5be294e101b64859ac1568c6c780670bc531e
parent51f9851753f7605eaa52a7a6982581455e1863ab (diff)
i965: use mmap64 for Android
Simplify the handling of mmap for Android by using mmap64 instead. mmap64 may have not existed for Android when this was written, but it's been around since 2013. Reviewed-by: Emil Velikov <[email protected]> Signed-off-by: Rob Herring <[email protected]>
-rw-r--r--src/mesa/drivers/dri/i965/libdrm_macros.h19
1 files changed, 3 insertions, 16 deletions
diff --git a/src/mesa/drivers/dri/i965/libdrm_macros.h b/src/mesa/drivers/dri/i965/libdrm_macros.h
index 8be103c5b7a..2cb76d585ac 100644
--- a/src/mesa/drivers/dri/i965/libdrm_macros.h
+++ b/src/mesa/drivers/dri/i965/libdrm_macros.h
@@ -29,26 +29,13 @@
#include <sys/mman.h>
#if defined(ANDROID) && !defined(__LP64__)
-#include <errno.h> /* for EINVAL */
-
-extern void *__mmap2(void *, size_t, int, int, int, size_t);
-
-static inline void *drm_mmap(void *addr, size_t length, int prot, int flags,
- int fd, loff_t offset)
-{
- /* offset must be aligned to 4096 (not necessarily the page size) */
- if (offset & 4095) {
- errno = EINVAL;
- return MAP_FAILED;
- }
-
- return __mmap2(addr, length, prot, flags, fd, (size_t) (offset >> 12));
-}
+/* 32-bit needs mmap64 for 64-bit offsets */
+# define drm_mmap(addr, length, prot, flags, fd, offset) \
+ mmap64(addr, length, prot, flags, fd, offset)
# define drm_munmap(addr, length) \
munmap(addr, length)
-
#else
/* assume large file support exists */