forked from pool/libuv
* adjust stalebot deadline - Update to version 1.24.0: 0001-linux-remove-epoll-syscall-wrappers.patch and * unix: make uv_guess_handle work properly for AIX (Gireesh * build: remove unused 'component' GYP option (Saúl Ibarra * win: use the MSVC provided snprintf where possible (Jason * unix: only undo fs req registration in async mode (Ben * test: fix fs_event_watch_file_currentdir flakiness (Santiago * unix: skip prohibited syscalls on tvOS and watchOS (Nathan * docs: clarify documentation of uv_tcp_init_ex (Andrius * win: properly return UV_EBADF when _close() fails (Nicholas * test,freebsd: skip udp_dual_stack if not supported (Santiago * test: fix -Wtautological-pointer-compare warnings (Saúl Ibarra * linux,fs: fix p{read,write}v with a 64bit offset (Saúl Ibarra * win: fix path for removed and renamed fs events (Joran Dirk * win: do not read more from stream than available (Jeremy * test: fix self-deadlocks in thread_rwlock_trylock (Ben * unix: don't block for io if any io handle is primed (Saúl * linux: work around epoll bug in kernels < 2.6.37 (Ben * unix: prevent infinite loop in uv__run_pending (Saúl Ibarra Corretgé) * unix: make sure UDP send callbacks are asynchronous (Saúl * aix: add ahafs autoconf detection and README notes (Andrew * core: add ability to customize memory allocator (Saúl Ibarra * doc: clarify that the thread pool primites are not thread safe * unix: fix glibc-2.20+ macro incompatibility (Massimiliano * doc: add Sphinx plugin for generating links to man pages * doc: link system and library calls to man pages (Saúl * doc: document uv_getnameinfo_t.{host|service} (Saúl Ibarra OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libuv?expand=0&rev=71
29 lines
1.1 KiB
Diff
29 lines
1.1 KiB
Diff
From 08f4fb449048e22be034b26fa41fb0723189f2b8 Mon Sep 17 00:00:00 2001
|
|
From: Brad King <brad.king@kitware.com>
|
|
Date: Fri, 12 Jan 2024 15:02:22 -0500
|
|
Subject: [PATCH] linux: disable io_uring on ppc64 and ppc64le
|
|
|
|
Since `io_uring` support was added, libuv's signal handler randomly
|
|
segfaults on ppc64 when interrupting `epoll_pwait`. Disable it
|
|
pending further investigation.
|
|
|
|
Issue: https://github.com/libuv/libuv/issues/4283
|
|
---
|
|
src/unix/linux.c | 3 +++
|
|
1 file changed, 3 insertions(+)
|
|
|
|
diff --git a/src/unix/linux.c b/src/unix/linux.c
|
|
index 3c1313e7efc..4164e90dbb0 100644
|
|
--- a/src/unix/linux.c
|
|
+++ b/src/unix/linux.c
|
|
@@ -463,6 +463,9 @@ static int uv__use_io_uring(void) {
|
|
#elif defined(__arm__) && __SIZEOF_POINTER__ == 4
|
|
/* See https://github.com/libuv/libuv/issues/4158. */
|
|
return 0; /* All 32 bits kernels appear buggy. */
|
|
+#elif defined(__powerpc64__) || defined(__ppc64__)
|
|
+ /* See https://github.com/libuv/libuv/issues/4283. */
|
|
+ return 0; /* Random SIGSEGV in signal handler. */
|
|
#else
|
|
/* Ternary: unknown=0, yes=1, no=-1 */
|
|
static _Atomic int use_io_uring;
|