diff options
author | Vinson Lee <[email protected]> | 2017-11-28 23:16:58 -0800 |
---|---|---|
committer | Vinson Lee <[email protected]> | 2017-11-30 01:36:46 -0800 |
commit | 8c1e4b1afc8d396ccf99c725c59b29a9aa305557 (patch) | |
tree | 3bd90a7b061103b8263a33dd9138f1bec52fd8c7 | |
parent | 8620f7ebbc763dc1bbbc825d31cacfdd84433e05 (diff) |
anv: Check if memfd_create is already defined.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103909
Signed-off-by: Vinson Lee <[email protected]>
Reviewed-by: Eric Engestrom <[email protected]>
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | meson.build | 2 | ||||
-rw-r--r-- | src/intel/vulkan/anv_allocator.c | 2 | ||||
-rw-r--r-- | src/intel/vulkan/anv_gem_stubs.c | 2 |
4 files changed, 6 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac index 1344c12884f..f378e54b857 100644 --- a/configure.ac +++ b/configure.ac @@ -849,6 +849,7 @@ AC_CHECK_HEADER([sys/sysctl.h], [DEFINES="$DEFINES -DHAVE_SYS_SYSCTL_H"]) AC_CHECK_FUNC([strtof], [DEFINES="$DEFINES -DHAVE_STRTOF"]) AC_CHECK_FUNC([mkostemp], [DEFINES="$DEFINES -DHAVE_MKOSTEMP"]) AC_CHECK_FUNC([timespec_get], [DEFINES="$DEFINES -DHAVE_TIMESPEC_GET"]) +AC_CHECK_FUNC([memfd_create], [DEFINES="$DEFINES -DHAVE_MEMFD_CREATE"]) AC_MSG_CHECKING([whether strtod has locale support]) AC_LINK_IFELSE([AC_LANG_SOURCE([[ diff --git a/meson.build b/meson.build index e2ba3cb0524..4a2e817f0fa 100644 --- a/meson.build +++ b/meson.build @@ -617,7 +617,7 @@ foreach h : ['xlocale.h', 'sys/sysctl.h', 'linux/futex.h'] endif endforeach -foreach f : ['strtof', 'mkostemp', 'posix_memalign', 'timespec_get'] +foreach f : ['strtof', 'mkostemp', 'posix_memalign', 'timespec_get', 'memfd_create'] if cc.has_function(f) pre_args += '-DHAVE_@0@'.format(f.to_upper()) endif diff --git a/src/intel/vulkan/anv_allocator.c b/src/intel/vulkan/anv_allocator.c index 8ed32b3c673..33bd3c68c55 100644 --- a/src/intel/vulkan/anv_allocator.c +++ b/src/intel/vulkan/anv_allocator.c @@ -109,11 +109,13 @@ struct anv_mmap_cleanup { #define ANV_MMAP_CLEANUP_INIT ((struct anv_mmap_cleanup){0}) +#ifndef HAVE_MEMFD_CREATE static inline int memfd_create(const char *name, unsigned int flags) { return syscall(SYS_memfd_create, name, flags); } +#endif static inline uint32_t ilog2_round_up(uint32_t value) diff --git a/src/intel/vulkan/anv_gem_stubs.c b/src/intel/vulkan/anv_gem_stubs.c index 02527b5fcd8..26eb5c8a610 100644 --- a/src/intel/vulkan/anv_gem_stubs.c +++ b/src/intel/vulkan/anv_gem_stubs.c @@ -27,11 +27,13 @@ #include "anv_private.h" +#ifndef HAVE_MEMFD_CREATE static inline int memfd_create(const char *name, unsigned int flags) { return syscall(SYS_memfd_create, name, flags); } +#endif uint32_t anv_gem_create(struct anv_device *device, uint64_t size) |