summaryrefslogtreecommitdiffstats
path: root/source/include
diff options
context:
space:
mode:
Diffstat (limited to 'source/include')
-rw-r--r--source/include/includes.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/source/include/includes.h b/source/include/includes.h
index bf85bcc0f4a..20d784e19df 100644
--- a/source/include/includes.h
+++ b/source/include/includes.h
@@ -55,6 +55,17 @@
#endif
#endif /* RELIANTUNIX */
+/* if we have both SYSV IPC and shared mmap then we need to choose. For most
+ systems it is much faster to use SYSV IPC, but under Linux it is
+ about 5 times faster to use fcntl, so for Linux systems we force
+ fcntl based locking */
+#if (defined(HAVE_SYSV_IPC) && defined(HAVE_SHARED_MMAP))
+# ifdef LINUX
+# undef HAVE_SYSV_IPC
+# else
+# undef HAVE_SHARED_MMAP
+# endif
+#endif
#include <sys/types.h>