[RFC][PATCH 1/5] libdrm: Use mmap64 instead of __mmap2
John Stultz
john.stultz at linaro.org
Sat Apr 20 04:24:51 UTC 2019
From: Sean Paul <seanpaul at chromium.org>
__mmap2 isn't supported on all platforms, mmap64 is the right way
to do this in android.
Also folds in a fix from Stéphane Marchesin <marcheu at chromium.org>
to use an offset in bytes not pages, as that's what mmap64 takes.
Cc: Emil Velikov <emil.velikov at collabora.com>
Cc: Sean Paul <seanpaul at chromium.org>
Cc: Alistair Strachan <astrachan at google.com>
Cc: Marissa Wall <marissaw at google.com>
Signed-off-by: Sean Paul <seanpaul at chromium.org>
Signed-off-by: John Stultz <john.stultz at linaro.org>
---
libdrm_macros.h | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/libdrm_macros.h b/libdrm_macros.h
index 95f0ef5..0dca827 100644
--- a/libdrm_macros.h
+++ b/libdrm_macros.h
@@ -48,8 +48,6 @@
#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)
{
@@ -59,7 +57,7 @@ static inline void *drm_mmap(void *addr, size_t length, int prot, int flags,
return MAP_FAILED;
}
- return __mmap2(addr, length, prot, flags, fd, (size_t) (offset >> 12));
+ return mmap64(addr, length, prot, flags, fd, offset);
}
# define drm_munmap(addr, length) \
--
2.7.4
More information about the dri-devel
mailing list