summaryrefslogtreecommitdiffstats
path: root/chromium/patches/022-no-sandbox-settls.patch
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/patches/022-no-sandbox-settls.patch')
-rw-r--r--chromium/patches/022-no-sandbox-settls.patch16
1 files changed, 16 insertions, 0 deletions
diff --git a/chromium/patches/022-no-sandbox-settls.patch b/chromium/patches/022-no-sandbox-settls.patch
new file mode 100644
index 0000000..f04e105
--- /dev/null
+++ b/chromium/patches/022-no-sandbox-settls.patch
@@ -0,0 +1,16 @@
1this optimisation of CLONE_SETTLS is not valid used like this, and musl
2clone(3) will EINVAL on this use
3--
4diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
5index 7f925cc..993a9ee 100644
6--- a/sandbox/linux/services/credentials.cc
7+++ b/sandbox/linux/services/credentials.cc
8@@ -104,7 +104,7 @@ bool ChrootToSafeEmptyDir() {
9 // glibc performs syscalls by calling a function pointer in TLS, so we do not
10 // attempt this optimization.
11 // TODO(crbug.com/40196869) Broken in MSan builds after LLVM f1bb30a4956f.
12- clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
13+ clone_flags |= CLONE_VM | CLONE_VFORK;
14
15 char tls_buf[PTHREAD_STACK_MIN_CONST] = {};
16 tls = tls_buf;