mirror of
https://github.com/matter-labs/nixsgx.git
synced 2025-07-20 23:23:57 +02:00
36 lines
834 B
Diff
36 lines
834 B
Diff
diff --git a/src/unix/async.c b/src/unix/async.c
|
|
index 0ff2669e..2bb87863 100644
|
|
--- a/src/unix/async.c
|
|
+++ b/src/unix/async.c
|
|
@@ -35,6 +35,13 @@
|
|
#include <sched.h> /* sched_yield() */
|
|
|
|
#ifdef __linux__
|
|
+#define HAVE_EVENT_FD
|
|
+#endif
|
|
+
|
|
+// No eventfd for gramine
|
|
+#undef HAVE_EVENT_FD
|
|
+
|
|
+#ifdef HAVE_EVENT_FD
|
|
#include <sys/eventfd.h>
|
|
#endif
|
|
|
|
@@ -188,7 +195,7 @@ static void uv__async_send(uv_loop_t* loop) {
|
|
len = 1;
|
|
fd = loop->async_wfd;
|
|
|
|
-#if defined(__linux__)
|
|
+#if defined(HAVE_EVENT_FD)
|
|
if (fd == -1) {
|
|
static const uint64_t val = 1;
|
|
buf = &val;
|
|
@@ -219,7 +226,7 @@ static int uv__async_start(uv_loop_t* loop) {
|
|
if (loop->async_io_watcher.fd != -1)
|
|
return 0;
|
|
|
|
-#ifdef __linux__
|
|
+#ifdef HAVE_EVENT_FD
|
|
err = eventfd(0, EFD_CLOEXEC | EFD_NONBLOCK);
|
|
if (err < 0)
|
|
return UV__ERR(errno);
|