st/nine: Check memfd_create support
authorAxel Davy <davyaxel0@gmail.com>
Tue, 9 Mar 2021 21:49:48 +0000 (22:49 +0100)
committerMarge Bot <eric+marge@anholt.net>
Thu, 11 Mar 2021 21:29:51 +0000 (21:29 +0000)
glibc introduced memfd_create only in its 2.27 release.

Check memfd_create support by verifying HAVE_MEMFD_CREATE
is defined.

Fixes: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9377

Reported by Roman Elshin in
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9451

Signed-off-by: Axel Davy <davyaxel0@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9483>

src/gallium/frontends/nine/nine_memory_helper.c

index f877175..ac9cde8 100644 (file)
 
 #define DBG_CHANNEL (DBG_BASETEXTURE|DBG_SURFACE|DBG_VOLUME|DBG_TEXTURE|DBG_CUBETEXTURE)
 
-#ifdef PIPE_ARCH_X86 /* Use memfd only for 32 bits */
+/* Use memfd only for 32 bits. Check for memfd_create support */
+#if defined(PIPE_ARCH_X86) && defined(HAVE_MEMFD_CREATE)
 #define NINE_ENABLE_MEMFD
 #endif