diff options
author | Changqing Li <changqing.li@windriver.com> | 2024-04-11 16:24:16 +0800 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2024-04-11 23:32:35 -0700 |
commit | 7bb28628991ec9be9610540401f7c6cc4c19997f (patch) | |
tree | e41b8a47f74277ca48da65bd6158cc88305bc65e | |
parent | 0bc241c5ab63795dc64d7d9c7907ad4056b0f2af (diff) | |
download | meta-openembedded-7bb28628991ec9be9610540401f7c6cc4c19997f.tar.gz |
nodejs: don't always disable io_uring
The original idea was always disable io_uring to avoid follwing failure
even when UV_USE_IO_URING is set to true, refer [1][2]:
0608: try:
*** 0609: update_hash(" %10s" % pwd.getpwuid(s.st_uid).pw_name)
0610: update_hash(" %10s" % grp.getgrgid(s.st_gid).gr_name)
0611: except KeyError as e:
0612: msg = ("KeyError: %s\nPath %s is owned by uid %d, gid %d, which doesn't match "
0613: "any user/group on target. This may be due to host contamination." %
Exception: Exception: KeyError: 'getpwuid(): uid not found: 20561'
But since 20.11.1, for fix CVE-2024-22017, io_uring is disabled by
default, refer [3]. So maybe patch
0001-deps-disable-io_uring-support-in-libuv.patch is not needed.
For case UV_USE_IO_URING is set to true, user can fix above failure
by "chown root:root -R ${D}" in do_install.
[1] https://lists.openembedded.org/g/openembedded-devel/message/105583
[2] https://bugzilla.yoctoproject.org/show_bug.cgi?id=15244
[3] https://github.com/nodejs/node/commit/686da19abbb83b7e01d48be19f832ab081b87084
[4] https://nvd.nist.gov/vuln/detail/CVE-2024-22017
Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r-- | meta-oe/recipes-devtools/nodejs/nodejs/0001-deps-disable-io_uring-support-in-libuv.patch | 35 | ||||
-rw-r--r-- | meta-oe/recipes-devtools/nodejs/nodejs_20.11.1.bb | 1 |
2 files changed, 0 insertions, 36 deletions
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-deps-disable-io_uring-support-in-libuv.patch b/meta-oe/recipes-devtools/nodejs/nodejs/0001-deps-disable-io_uring-support-in-libuv.patch deleted file mode 100644 index f11cd08cb..000000000 --- a/meta-oe/recipes-devtools/nodejs/nodejs/0001-deps-disable-io_uring-support-in-libuv.patch +++ /dev/null | |||
@@ -1,35 +0,0 @@ | |||
1 | From 9838be9c710ab4249df86726fa390232a3b6a6e7 Mon Sep 17 00:00:00 2001 | ||
2 | From: Changqing Li <changqing.li@windriver.com> | ||
3 | Date: Fri, 1 Mar 2024 15:46:11 +0800 | ||
4 | Subject: [PATCH] deps: disable io_uring support in libuv | ||
5 | |||
6 | Refer [1], Pseudo fails to intercept some of the syscalls when io_uring | ||
7 | enabled. Refer [2], always disable io_uring support in libuv to fix | ||
8 | issue in [1]. | ||
9 | |||
10 | [1] https://git.openembedded.org/meta-openembedded/commit/?id=d08453978c31ee41d28206c6ff198d7d9d701d88 | ||
11 | [2] https://github.com/nodejs/node/commit/686da19abb | ||
12 | |||
13 | Upstream-Status: Inappropriate [oe specific] | ||
14 | |||
15 | Signed-off-by: Changqing Li <changqing.li@windriver.com> | ||
16 | --- | ||
17 | deps/uv/src/unix/linux.c | 2 +- | ||
18 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
19 | |||
20 | diff --git a/deps/uv/src/unix/linux.c b/deps/uv/src/unix/linux.c | ||
21 | index 0c997185..7508409d 100644 | ||
22 | --- a/deps/uv/src/unix/linux.c | ||
23 | +++ b/deps/uv/src/unix/linux.c | ||
24 | @@ -433,7 +433,7 @@ static int uv__use_io_uring(void) { | ||
25 | if (use == 0) { | ||
26 | /* Disable io_uring by default due to CVE-2024-22017. */ | ||
27 | val = getenv("UV_USE_IO_URING"); | ||
28 | - use = val != NULL && atoi(val) ? 1 : -1; | ||
29 | + use = 0; | ||
30 | atomic_store_explicit(&use_io_uring, use, memory_order_relaxed); | ||
31 | } | ||
32 | |||
33 | -- | ||
34 | 2.25.1 | ||
35 | |||
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs_20.11.1.bb b/meta-oe/recipes-devtools/nodejs/nodejs_20.11.1.bb index e2e2f5ae8..9a61cfcf7 100644 --- a/meta-oe/recipes-devtools/nodejs/nodejs_20.11.1.bb +++ b/meta-oe/recipes-devtools/nodejs/nodejs_20.11.1.bb | |||
@@ -24,7 +24,6 @@ SRC_URI = "http://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \ | |||
24 | file://0004-v8-don-t-override-ARM-CFLAGS.patch \ | 24 | file://0004-v8-don-t-override-ARM-CFLAGS.patch \ |
25 | file://system-c-ares.patch \ | 25 | file://system-c-ares.patch \ |
26 | file://0001-liftoff-Correct-function-signatures.patch \ | 26 | file://0001-liftoff-Correct-function-signatures.patch \ |
27 | file://0001-deps-disable-io_uring-support-in-libuv.patch \ | ||
28 | file://run-ptest \ | 27 | file://run-ptest \ |
29 | " | 28 | " |
30 | 29 | ||