summaryrefslogtreecommitdiff
path: root/dev-libs/libuv/files/libuv-1.47.0-hppa-kernel.patch
blob: 1871ae2213954782a638a192c00cd0047ab23a5f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
https://github.com/libuv/libuv/commit/f1444293652cf5478a67b9305271d73ad6d36232

From f1444293652cf5478a67b9305271d73ad6d36232 Mon Sep 17 00:00:00 2001
From: matoro <12038583+matoro@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-d608f3526905@gmx.de/

Co-authored-by: matoro <matoro@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-d608f3526905@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");