about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSzabolcs Nagy <szabolcs.nagy@arm.com>2022-10-18 15:10:03 +0100
committerSzabolcs Nagy <szabolcs.nagy@arm.com>2022-10-27 14:46:54 +0100
commit3dcebd639847f641679ae301554d6ad74578ff4e (patch)
treee04f227a3624519fac41e1e31ab3d1670bcd8460
parent63aa755b4064a0cbd1598b53cb8c82ecb8ea4e2d (diff)
downloadglibc-3dcebd639847f641679ae301554d6ad74578ff4e.tar.gz
glibc-3dcebd639847f641679ae301554d6ad74578ff4e.tar.xz
glibc-3dcebd639847f641679ae301554d6ad74578ff4e.zip
cheri: Update the static tls requirement of the libc
Larger requirement because pointers are bigger.
-rw-r--r--elf/dl-tls.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/elf/dl-tls.c b/elf/dl-tls.c
index 093cdddb7e..1b90bf17b3 100644
--- a/elf/dl-tls.c
+++ b/elf/dl-tls.c
@@ -62,7 +62,11 @@
    observed PT_GNU_TLS sizes across all architectures.  Some
    architectures have lower values due to differences in type sizes
    and link editor capabilities.  */
+#ifdef __CHERI_PURE_CAPABILITY__
+#define LIBC_IE_TLS 256
+#else
 #define LIBC_IE_TLS 144
+#endif
 
 /* Size of initial-exec TLS in libraries other than libc.so.
    This should be large enough to cover runtime libraries of the
@@ -87,7 +91,11 @@ tls_static_surplus (int nns, int opt_tls)
    the computation of dl_tls_static_surplus in
    _dl_tls_static_surplus_init yields the historic value 1664, for
    backwards compatibility.  */
+#ifdef __CHERI_PURE_CAPABILITY__
+#define LEGACY_TLS 0
+#else
 #define LEGACY_TLS (1664 - tls_static_surplus (DEFAULT_NNS, OPTIONAL_TLS))
+#endif
 
 /* Calculate the size of the static TLS surplus, when the given
    number of audit modules are loaded.  Must be called after the