aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/panfrost
diff options
context:
space:
mode:
authorMateusz Krzak <[email protected]>2019-04-07 23:25:49 +0200
committerEric Anholt <[email protected]>2019-04-12 16:33:00 +0000
commitf4fc2ece5776a2c15d9db0a2ff2b94491cfc3ebb (patch)
tree63280b9024e571ba27929a01d14a77512683d536 /src/gallium/drivers/panfrost
parent411da8b80d34552141920ed07dd6d174e5c72307 (diff)
panfrost: use os_mmap and os_munmap
32-bit needs mmap64 for 64-bit offsets. We get 64-bit offsets from kernel. Signed-off-by: Mateusz Krzak <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/gallium/drivers/panfrost')
-rw-r--r--src/gallium/drivers/panfrost/pan_drm.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/gallium/drivers/panfrost/pan_drm.c b/src/gallium/drivers/panfrost/pan_drm.c
index 9aabd96769b..70d8d7498d4 100644
--- a/src/gallium/drivers/panfrost/pan_drm.c
+++ b/src/gallium/drivers/panfrost/pan_drm.c
@@ -29,6 +29,7 @@
#include "util/u_memory.h"
#include "util/os_time.h"
+#include "os/os_mman.h"
#include "pan_screen.h"
#include "pan_resource.h"
@@ -81,7 +82,7 @@ panfrost_drm_allocate_slab(struct panfrost_screen *screen,
assert(0);
}
- mem->cpu = mmap(NULL, mem->size, PROT_READ | PROT_WRITE, MAP_SHARED,
+ mem->cpu = os_mmap(NULL, mem->size, PROT_READ | PROT_WRITE, MAP_SHARED,
drm->fd, mmap_bo.offset);
if (mem->cpu == MAP_FAILED) {
fprintf(stderr, "mmap failed: %p\n", mem->cpu);
@@ -102,7 +103,7 @@ panfrost_drm_free_slab(struct panfrost_screen *screen, struct panfrost_memory *m
};
int ret;
- if (munmap((void *) (uintptr_t) mem->cpu, mem->size)) {
+ if (os_munmap((void *) (uintptr_t) mem->cpu, mem->size)) {
perror("munmap");
abort();
}
@@ -148,7 +149,7 @@ panfrost_drm_import_bo(struct panfrost_screen *screen, struct winsys_handle *wha
bo->size = lseek(whandle->handle, 0, SEEK_END);
assert(bo->size > 0);
- bo->cpu = mmap(NULL, bo->size, PROT_READ | PROT_WRITE, MAP_SHARED,
+ bo->cpu = os_mmap(NULL, bo->size, PROT_READ | PROT_WRITE, MAP_SHARED,
drm->fd, mmap_bo.offset);
if (bo->cpu == MAP_FAILED) {
fprintf(stderr, "mmap failed: %p\n", bo->cpu);