summaryrefslogtreecommitdiff
path: root/src/syscall.c
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2019-01-08 06:51:07 -0700
committerJens Axboe <axboe@kernel.dk>2019-01-08 07:38:15 -0700
commitf93c84e1b07474a7d776403b3516feeff4f3c933 (patch)
tree4b71b6a4013c643d669398fdb8f33f74b6081cd2 /src/syscall.c
Initial commit
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'src/syscall.c')
-rw-r--r--src/syscall.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/syscall.c b/src/syscall.c
new file mode 100644
index 0000000..eafdd39
--- /dev/null
+++ b/src/syscall.c
@@ -0,0 +1,31 @@
+/*
+ * Will go away once libc support is there
+ */
+#include <unistd.h>
+#include <sys/syscall.h>
+#include <sys/uio.h>
+#include "io_uring.h"
+
+#if defined(__x86_64)
+#ifndef __NR_sys_io_uring_setup
+#define __NR_sys_io_uring_setup 335
+#endif
+#ifndef __NR_sys_io_uring_enter
+#define __NR_sys_io_uring_enter 336
+#endif
+#else
+#error "Arch not supported yet"
+#endif
+
+int io_uring_setup(unsigned int entries, struct iovec *iovecs,
+ struct io_uring_params *p)
+{
+ return syscall(__NR_sys_io_uring_setup, entries, iovecs, p);
+}
+
+int io_uring_enter(int fd, unsigned int to_submit, unsigned int min_complete,
+ unsigned int flags)
+{
+ return syscall(__NR_sys_io_uring_enter, fd, to_submit, min_complete,
+ flags);
+}