History log of /dragonfly/lib/libc/gen/elf_utils.c (Results 1 – 4 of 4)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v6.2.1, v6.2.0, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2, v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3
# eeb69571 09-Aug-2019 Matthew Dillon <dillon@apollo.backplane.com>

rtld - Support static TLS bindings for late-loaded shared libraries

* Allow late (manual) dlopen()s to load shared libraries which
use static TLS variables, as long as there is space. Do proper

rtld - Support static TLS bindings for late-loaded shared libraries

* Allow late (manual) dlopen()s to load shared libraries which
use static TLS variables, as long as there is space. Do proper
late-binding and initialize the area for all threads.

* rtld will cache a symbol lookup on first-need for:
"_pthread_distribute_static_tls" and then call it as needed to
initialize late-bound static TLS space.

This symbol is weakly bounded to __libc_distribute_static_tls in libc,
and strongly overridden by _libthread_distribute_static_tls in
libthread_xu.

* Fixes mesa glx-tls and others.

* Test code from FreeBSD. Also tested with other combinations
including a pthread_create() and -static compilation.

https://github.com/dumbbell/test-tls-initial-exec

show more ...


Revision tags: v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2
# f45ae2bf 09-Apr-2019 Sascha Wildner <saw@online.de>

libc: Fix some more -Wmissing-prototype.


Revision tags: v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1, v5.2.0, v5.3.0, v5.2.0rc, v5.0.2, v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1, v4.8.0, v4.6.2, v4.9.0, v4.8.0rc, v4.6.1, v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0, v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc, v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5, v4.0.4, v4.0.3, v4.0.2, v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0, v3.8.2, v3.8.1, v3.6.3, v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2, v3.6.1, v3.6.0, v3.7.1, v3.6.0rc, v3.7.0, v3.4.3, v3.4.2, v3.4.0, v3.4.1, v3.4.0rc, v3.5.0, v3.2.2, v3.2.1, v3.2.0, v3.3.0, v3.0.3, v3.0.2, v3.0.1, v3.1.0, v3.0.0
# 86d7f5d3 26-Nov-2011 John Marino <draco@marino.st>

Initial import of binutils 2.22 on the new vendor branch

Future versions of binutils will also reside on this branch rather
than continuing to create new binutils branches for each new version.


Revision tags: v2.12.0, v2.13.0, v2.10.1, v2.11.0, v2.10.0
# fcf53d9b 13-Apr-2011 John Marino <draco@marino.st>

rtld-elf: Sync with FreeBSD

The DragonFly run-time linker receives its first upgrade since TLS was
added. Highlights include improvements to dl functionality:

dlvsym
dl_iterate_phdr
_rtld_addr_phd

rtld-elf: Sync with FreeBSD

The DragonFly run-time linker receives its first upgrade since TLS was
added. Highlights include improvements to dl functionality:

dlvsym
dl_iterate_phdr
_rtld_addr_phdr
improved dlfunct

Improved security for dangerous LD environment variables were added.
Several bugs were fixed.
libmap.conf functionality was added.
utrace/ktrace support added.
Improved atexit and cxa_atexit finalization.
ELF symbol versioning using gnu semantics.
ldd and kdump improvments
significant man page updates
dynamic token expansion functionlity added.
new locking mechanism
Support for env var LD_ELF_HINTS_PATH
Support for RTLD_NODELETE and RTLD_NOLOAD flags for dlopen
dlfunc moved from libc to rtld

The next GCC upgrade will take advantage of this rtld upgrade in order
to improve exception handling. DragonFly has never used the shared
libgcc_s which has impeded (or broke?) C++ exception handling.

This commit syncs rtld-elf to the FreeBSD cerca 16 DEC 2010. However,
bug fixes between then and 25 March 2011 have been included, but major
functionality changes from the ELF Filter support on 25 DEC 2010 onwards
has been excluded.

show more ...