aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2023-06-09 00:51:32 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2023-06-09 12:13:46 +0000
commite9a38ed2fa61fd264a80f24ceb35f39b0ac6463d (patch)
treea9ce6be59e05f4f678dd66dfa1576389761d4208
parent5253d74e4650300815af351cc510a1c392a16584 (diff)
downloadsrc-e9a38ed2fa61fd264a80f24ceb35f39b0ac6463d.tar.gz
src-e9a38ed2fa61fd264a80f24ceb35f39b0ac6463d.zip
rtld: fix allocate_module_tls() variant I fallback to static allocation
Submitted by: Joerg Sonnenberger Fixes: 91880e07f605edb90339685bc934699a4344de3bESC MFC after: 1 week
-rw-r--r--libexec/rtld-elf/rtld.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libexec/rtld-elf/rtld.c b/libexec/rtld-elf/rtld.c
index 72a128ccbb81..173dcd4e9878 100644
--- a/libexec/rtld-elf/rtld.c
+++ b/libexec/rtld-elf/rtld.c
@@ -5465,7 +5465,7 @@ allocate_module_tls(int index)
if (obj->tls_static) {
#ifdef TLS_VARIANT_I
- p = (char *)_tcb_get() + obj->tlsoffset;
+ p = (char *)_tcb_get() + obj->tlsoffset + TLS_TCB_SIZE;
#else
p = (char *)_tcb_get() - obj->tlsoffset;
#endif