diff options
-rw-r--r-- | src/system/EPollFD.cxx | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/system/EPollFD.cxx b/src/system/EPollFD.cxx index 16787a50b..43e74712f 100644 --- a/src/system/EPollFD.cxx +++ b/src/system/EPollFD.cxx @@ -22,6 +22,21 @@ #include "EPollFD.hxx" #include "FatalError.hxx" +#ifdef __BIONIC__ + +#include <sys/syscall.h> +#include <fcntl.h> + +#define EPOLL_CLOEXEC O_CLOEXEC + +static inline int +epoll_create1(int flags) +{ + return syscall(__NR_epoll_create1, flags); +} + +#endif + EPollFD::EPollFD() :fd(::epoll_create1(EPOLL_CLOEXEC)) { |