[Bug 254774] [rtld] dl_iterate_phdr: dlpi_tls_data should be the iterated module's TLS image instead of TLS initialization image
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Sun Apr 4 23:51:19 UTC 2021
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=254774
Bug ID: 254774
Summary: [rtld] dl_iterate_phdr: dlpi_tls_data should be the
iterated module's TLS image instead of TLS
initialization image
Product: Base System
Version: Unspecified
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: misc
Assignee: bugs at FreeBSD.org
Reporter: emacsray at gmail.com
glibc d78efd9f369a8fc46229fc9224e10e3781eecc43 (2006-02) introduced
dlpi_tls_modid and dlpi_tls_data.
dlpi_tls_data is the allocated TLS image associated to the module
dlpi_tls_modid.
The Linux manpage documents the two members as:
size_t dlpi_tls_modid;
/* If there is a PT_TLS segment, its module
ID as used in TLS relocations, else zero */
void *dlpi_tls_data;
/* The address of the calling thread's instance
of this module's PT_TLS segment, if it has
one and it has been allocated in the calling
thread, otherwise a null pointer */
In FreeBSD, dlpi_tls_data is however the TLS initialization image as part of
the underlying file.
I plan to use dl_iterate_phdr in compiler-rt's sanitizer runtime to simplify
TLS handling,
but unfortunately FreeBSD dlpi_tls_data does not have the desired semantics :(
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list