From 01cf24ec66c663e3f40be1d5c703aa9666effc85 Mon Sep 17 00:00:00 2001 From: Kacper Date: Mon, 15 Dec 2025 18:44:07 +0100 Subject: Add inotify and reorganize eventfd and io_uring syscalls --- lib/libc/sys/eventfd/Kbuild | 3 +++ lib/libc/sys/eventfd/eventfd.c | 6 ++++++ lib/libc/sys/eventfd/eventfd_read.c | 8 ++++++++ lib/libc/sys/eventfd/eventfd_write.c | 8 ++++++++ 4 files changed, 25 insertions(+) create mode 100644 lib/libc/sys/eventfd/Kbuild create mode 100644 lib/libc/sys/eventfd/eventfd.c create mode 100644 lib/libc/sys/eventfd/eventfd_read.c create mode 100644 lib/libc/sys/eventfd/eventfd_write.c (limited to 'lib/libc/sys/eventfd') diff --git a/lib/libc/sys/eventfd/Kbuild b/lib/libc/sys/eventfd/Kbuild new file mode 100644 index 00000000..ad7a3422 --- /dev/null +++ b/lib/libc/sys/eventfd/Kbuild @@ -0,0 +1,3 @@ +obj-y += eventfd.o +obj-y += eventfd_read.o +obj-y += eventfd_write.o diff --git a/lib/libc/sys/eventfd/eventfd.c b/lib/libc/sys/eventfd/eventfd.c new file mode 100644 index 00000000..b0fb5d86 --- /dev/null +++ b/lib/libc/sys/eventfd/eventfd.c @@ -0,0 +1,6 @@ +#include + +int eventfd(unsigned int initval, int flags) +{ + return syscall(eventfd2, initval, flags); +} diff --git a/lib/libc/sys/eventfd/eventfd_read.c b/lib/libc/sys/eventfd/eventfd_read.c new file mode 100644 index 00000000..78d73623 --- /dev/null +++ b/lib/libc/sys/eventfd/eventfd_read.c @@ -0,0 +1,8 @@ +#include +#include +#include + +int eventfd_read(int fildes, eventfd_t *value) +{ + return (sizeof(*value) == read(fildes, value, sizeof(*value))) ? 0 : -1; +} diff --git a/lib/libc/sys/eventfd/eventfd_write.c b/lib/libc/sys/eventfd/eventfd_write.c new file mode 100644 index 00000000..9c89b388 --- /dev/null +++ b/lib/libc/sys/eventfd/eventfd_write.c @@ -0,0 +1,8 @@ +#include +#include +#include + +int eventfd_write(int fildes, eventfd_t value) +{ + return (sizeof(value) == write(fildes, &value, sizeof(value))) ? 0 : -1; +} -- cgit v1.2.3