aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tools/testing/selftests/vm/mlock2.h
diff options
context:
space:
mode:
Diffstat (limited to 'tools/testing/selftests/vm/mlock2.h')
-rw-r--r--tools/testing/selftests/vm/mlock2.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/tools/testing/selftests/vm/mlock2.h b/tools/testing/selftests/vm/mlock2.h
new file mode 100644
index 000000000000..b9c6d9fe372f
--- /dev/null
+++ b/tools/testing/selftests/vm/mlock2.h
@@ -0,0 +1,20 @@
+#include <syscall.h>
+#include <errno.h>
+
+#ifndef MLOCK_ONFAULT
+#define MLOCK_ONFAULT 1
+#endif
+
+#ifndef MCL_ONFAULT
+#define MCL_ONFAULT (MCL_FUTURE << 1)
+#endif
+
+static int mlock2_(void *start, size_t len, int flags)
+{
+#ifdef __NR_mlock2
+ return syscall(__NR_mlock2, start, len, flags);
+#else
+ errno = ENOSYS;
+ return -1;
+#endif
+}