tools/nolibc: add wrapper for memfd_create
authorThomas Weißschuh <linux@weissschuh.net>
Sun, 2 Apr 2023 18:48:04 +0000 (20:48 +0200)
committerPaul E. McKenney <paulmck@kernel.org>
Fri, 9 Jun 2023 18:33:05 +0000 (11:33 -0700)
This is useful for users and will also be used by a future testcase.

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Signed-off-by: Willy Tarreau <w@1wt.eu>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
tools/include/nolibc/sys.h

index 5d624dc..bea9760 100644 (file)
@@ -1365,6 +1365,29 @@ ssize_t write(int fd, const void *buf, size_t count)
        return ret;
 }
 
+
+/*
+ * int memfd_create(const char *name, unsigned int flags);
+ */
+
+static __attribute__((unused))
+int sys_memfd_create(const char *name, unsigned int flags)
+{
+       return my_syscall2(__NR_memfd_create, name, flags);
+}
+
+static __attribute__((unused))
+int memfd_create(const char *name, unsigned int flags)
+{
+       ssize_t ret = sys_memfd_create(name, flags);
+
+       if (ret < 0) {
+               SET_ERRNO(-ret);
+               ret = -1;
+       }
+       return ret;
+}
+
 /* make sure to include all global symbols */
 #include "nolibc.h"