Skip to content

Commit 264a8f3

Browse files
committed
linux: fix epoll_pwait() fallback on arm64
arm64 doesn't have a epoll_wait() system call but a logic error stopped libuv from falling back to epoll_pwait(). This bug was introduced in commit libuv/libuv@67bb2b5 ("linux: fix epoll_pwait() regression with < 2.6.19") which sadly exchanged one regression for another. This commit is a back-port of libuv/libuv@1d8332f and should help get the ARMv8 buildbot in better shape. Original-PR-URL: libuv/libuv#308 PR-URL: #1365 Reviewed-By: Fedor Indutny <[email protected]>
1 parent 3066f2c commit 264a8f3

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

deps/uv/src/unix/linux-core.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ void uv__io_poll(uv_loop_t* loop, int timeout) {
210210
if (pthread_sigmask(SIG_BLOCK, &sigset, NULL))
211211
abort();
212212

213-
if (sigmask != 0 && no_epoll_pwait == 0) {
213+
if (no_epoll_wait != 0 || (sigmask != 0 && no_epoll_pwait == 0)) {
214214
nfds = uv__epoll_pwait(loop->backend_fd,
215215
events,
216216
ARRAY_SIZE(events),

0 commit comments

Comments
 (0)