glibc/sysdeps/unix/sysv/linux/aarch64
Florian Weimer ee1ada1bdb elf: Rework exception handling in the dynamic loader [BZ #25486]
The old exception handling implementation used function interposition
to replace the dynamic loader implementation (no TLS support) with the
libc implementation (TLS support).  This results in problems if the
link order between the dynamic loader and libc is reversed (bug 25486).

The new implementation moves the entire implementation of the
exception handling functions back into the dynamic loader, using
THREAD_GETMEM and THREAD_SETMEM for thread-local data support.
These depends on Hurd support for these macros, added in commit
b65a82e4e7 ("hurd: Add THREAD_GET/SETMEM/_NC").

One small obstacle is that the exception handling facilities are used
before the TCB has been set up, so a check is needed if the TCB is
available.  If not, a regular global variable is used to store the
exception handling information.

Also rename dl-error.c to dl-catch.c, to avoid confusion with the
dlerror function.

Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
2022-11-03 09:39:31 +01:00
..
bits Add AArch64 HWCAP2_EBF16 from Linux 6.0 to bits/hwcap.h 2022-10-12 14:28:14 +00:00
sys Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
arch-syscall.h Update syscall lists for Linux 5.17 2022-03-23 17:11:56 +00:00
c++-types.data AArch64: Consolidate nptl/ subdirectories under linux/... 2014-06-26 09:29:24 -07:00
clone.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
configure LIBC_SLIBDIR_RTLDDIR: substitute arguments in single quotes 2018-01-25 17:20:28 +01:00
configure.ac Refactor handling of /lib64 etc. cases, move out of sysdeps/gnu/configure.ac. 2014-07-17 14:35:48 +00:00
cpu-features.c AArch64: Add asymmetric faulting mode for tag violations in mem.tagging tunable 2022-06-30 14:01:08 +01:00
cpu-features.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
dl-cache.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
dl-procinfo.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
dl-procinfo.h elf: Remove _dl_string_hwcap 2022-10-06 07:59:48 -03:00
getcontext.S aarch64: Fix the extension header write in getcontext and swapcontext 2022-10-28 11:14:54 +01:00
gettimeofday.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
Implies NPTL is no longer an add-on! 2014-07-07 09:29:06 -07:00
ioctl.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
kernel_rt_sigframe.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
kernel-features.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
ld.abilist Linux: Use ptrdiff_t for __rseq_offset 2022-02-02 22:37:20 +01:00
libanl.abilist resolv: Move libanl into libc (if libpthread is in libc) 2021-07-02 11:45:00 +02:00
libBrokenLocale.abilist Ignore absolute symbols in ABI tests. 2018-05-04 15:46:32 +00:00
libc_malloc_debug.abilist Move malloc_{g,s}et_state to libc_malloc_debug 2021-07-22 18:38:10 +05:30
libc_sigaction.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
libc-start.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
libc.abilist stdlib: Add arc4random, arc4random_buf, and arc4random_uniform (BZ #4417) 2022-07-22 11:58:27 -03:00
libcrypt.abilist Ignore absolute symbols in ABI tests. 2018-05-04 15:46:32 +00:00
libdl.abilist dlfcn: Move dlopen into libc 2021-06-03 08:26:04 +02:00
libm.abilist math: Remove the error handling wrapper from hypot and hypotf 2021-12-13 10:08:46 -03:00
libnsl.abilist Ignore absolute symbols in ABI tests. 2018-05-04 15:46:32 +00:00
libpthread.abilist nptl: Remove remaining code from libpthread 2021-05-21 22:35:01 +02:00
libresolv.abilist resolv: Move res_query functions into libc 2021-07-19 07:56:57 +02:00
librt.abilist Linux: Move timer_settime, __timer_settime64 from librt to libc 2021-06-28 09:51:01 +02:00
libthread_db.abilist Ignore absolute symbols in ABI tests. 2018-05-04 15:46:32 +00:00
libutil.abilist login: Move libutil into libc 2021-06-30 08:43:37 +02:00
localplt.data elf: Rework exception handling in the dynamic loader [BZ #25486] 2022-11-03 09:39:31 +01:00
makecontext.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
Makefile aarch64: Remove _dl_var_init 2021-05-17 10:07:44 +02:00
pointer_guard.h Introduce <pointer_guard.h>, extracted from <sysdep.h> 2022-10-18 17:03:55 +02:00
readelflib.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
send.c nptl: Remove send from libpthread 2021-03-26 13:36:17 -03:00
setcontext.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
shlib-versions Remove configuration name patterns from shlib-versions. 2014-09-12 12:28:47 +00:00
sigcontextinfo.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
single-thread.h Replace __libc_multiple_threads with __libc_single_threaded 2022-07-05 10:14:47 -03:00
swapcontext.S aarch64: Fix the extension header write in getcontext and swapcontext 2022-10-28 11:14:54 +01:00
syscall.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
sysconf.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
sysdep.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
sysdep.h Introduce <pointer_guard.h>, extracted from <sysdep.h> 2022-10-18 17:03:55 +02:00
ucontext_i.sym aarch64: Revert the change of the __reserved member of mcontext_t 2018-01-24 11:53:30 +00:00
ucontext-internal.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
Versions aarch64: Remove _dl_var_init 2021-05-17 10:07:44 +02:00
vfork.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
vltest.py Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00