commit: 3331727427deec8acf5ce5826ede0e835259fc3e Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Sun Nov 26 23:47:45 2023 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sun Nov 26 23:47:45 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=33317274
dev-libs/libuv: add hppa patch to 1.47.0 Signed-off-by: Sam James <sam <AT> gentoo.org> .../libuv/files/libuv-1.47.0-hppa-kernel.patch | 32 ++++++++++++++++++++++ ...{libuv-1.47.0.ebuild => libuv-1.47.0-r1.ebuild} | 1 + 2 files changed, 33 insertions(+) diff --git a/dev-libs/libuv/files/libuv-1.47.0-hppa-kernel.patch b/dev-libs/libuv/files/libuv-1.47.0-hppa-kernel.patch new file mode 100644 index 000000000000..1871ae221395 --- /dev/null +++ b/dev-libs/libuv/files/libuv-1.47.0-hppa-kernel.patch @@ -0,0 +1,32 @@ +https://github.com/libuv/libuv/commit/f1444293652cf5478a67b9305271d73ad6d36232 + +From f1444293652cf5478a67b9305271d73ad6d36232 Mon Sep 17 00:00:00 2001 +From: matoro <12038583+mat...@users.noreply.github.com> +Date: Wed, 15 Nov 2023 17:57:06 -0500 +Subject: [PATCH] linux: disable io_uring on hppa below kernel 6.1.51 (#4224) + +First kernel with support is 6.1, was only fully functional from .51 +onwards: https://lore.kernel.org/all/cb912694-b1fe-dbb0-4d8c-d608f3526...@gmx.de/ + +Co-authored-by: matoro <mat...@users.noreply.github.com> +--- a/src/unix/linux.c ++++ b/src/unix/linux.c +@@ -487,8 +487,16 @@ static int uv__use_io_uring(void) { + use = atomic_load_explicit(&use_io_uring, memory_order_relaxed); + + if (use == 0) { ++ use = uv__kernel_version() >= ++#if defined(__hppa__) ++ /* io_uring first supported on parisc in 6.1, functional in .51 */ ++ /* https://lore.kernel.org/all/cb912694-b1fe-dbb0-4d8c-d608f3526...@gmx.de/ */ ++ /* 6.1.51 */ 0x060133 ++#else + /* Older kernels have a bug where the sqpoll thread uses 100% CPU. */ +- use = uv__kernel_version() >= /* 5.10.186 */ 0x050ABA ? 1 : -1; ++ /* 5.10.186 */ 0x050ABA ++#endif ++ ? 1 : -1; + + /* But users can still enable it if they so desire. */ + val = getenv("UV_USE_IO_URING"); + diff --git a/dev-libs/libuv/libuv-1.47.0.ebuild b/dev-libs/libuv/libuv-1.47.0-r1.ebuild similarity index 96% rename from dev-libs/libuv/libuv-1.47.0.ebuild rename to dev-libs/libuv/libuv-1.47.0-r1.ebuild index 34862127937a..879df48c159f 100644 --- a/dev-libs/libuv/libuv-1.47.0.ebuild +++ b/dev-libs/libuv/libuv-1.47.0-r1.ebuild @@ -26,6 +26,7 @@ BDEPEND=" PATCHES=( "${FILESDIR}"/${P}-ipv6-tests.patch + "${FILESDIR}"/${P}-hppa-kernel.patch ) src_prepare() {