errno/h_errno

Wilco Dijkstra Wilco.Dijkstra@arm.com
Wed Jun 11 15:14:18 GMT 2025


Hi Florian,

> Initial-exec is only *guaranteed* to work for initially shared objects.
> Normally, this includes libc.so.6, so it's safe to use initial-exec.
> But it's possible to load multiple copies of libc.so.6 via auditors and
> dlmopen, so ideally, libc.so.6 and all the code referencing its TLS
> variables should not use initial-exec TLS, either.

The amount of IE-TLS in GLIBC is only ~144 bytes. It would be a step back
if all thread local variables in GLIBC had to become global-dynamic instead
of moving them into the TCB...

Given we already use separate builds for static and DSO, could we build
GLIBC with different options for dlmopen if needed?

Cheers,
Wilco






More information about the Libc-alpha mailing list