glibc/sysdeps/unix/sysv/linux/ia64
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 Expose all MAP_ constants in <sys/mman.h> unconditionally (bug 29375) 2022-10-10 09:30:24 +02:00
sys Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
____longjmp_chk.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
__ia64_longjmp.S Introduce <pointer_guard.h>, extracted from <sysdep.h> 2022-10-18 17:03:55 +02:00
__longjmp.S Introduce <pointer_guard.h>, extracted from <sysdep.h> 2022-10-18 17:03:55 +02:00
__sigstack_longjmp.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
__start_context.S 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
brk.c ia64: Always define IA64_USE_NEW_STUB as a flag macro 2022-05-09 18:15:16 +02:00
bsd-_setjmp.S
bsd-setjmp.S
c++-types.data
clone2.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
clone.S
configure
configure.ac
dl-cache.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
dl-sysdep.h rtld: Remove DL_ARGV_NOT_RELRO and make _dl_skip_args const 2022-05-17 10:14:03 +01:00
getclktck.c
getcontext.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
Implies
ioperm.c 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
ldd-rewrite.sed
libanl.abilist
libBrokenLocale.abilist
libc_malloc_debug.abilist Move malloc_{g,s}et_state to libc_malloc_debug 2021-07-22 18:38:10 +05:30
libc.abilist stdlib: Add arc4random, arc4random_buf, and arc4random_uniform (BZ #4417) 2022-07-22 11:58:27 -03:00
libcrypt.abilist
libdl.abilist
libm.abilist Add fmaximum, fminimum functions 2021-09-28 23:31:35 +00:00
libnsl.abilist
libpthread.abilist
libresolv.abilist
librt.abilist
libthread_db.abilist
libutil.abilist
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 Default to --with-default-link=no (bug 25812) 2022-04-22 10:59:03 +02:00
mmap_internal.h linux: Use same type for MMAP2_PAGE_UNIT 2022-09-20 10:57:40 -03:00
pointer_guard.h Introduce <pointer_guard.h>, extracted from <sysdep.h> 2022-10-18 17:03:55 +02:00
readelflib.c elf: Remove ldconfig kernel version check 2022-05-16 15:03:49 -03:00
rt-sysdep.S
setcontext.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
setjmp.S Introduce <pointer_guard.h>, extracted from <sysdep.h> 2022-10-18 17:03:55 +02:00
shlib-versions
sigaltstack-offsets.sym
sigcontext-offsets.sym
sigcontextinfo.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
startup.h Linux: Implement a useful version of _startup_fatal 2022-05-09 18:15:16 +02:00
swapcontext.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
syscall.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
syscalls.list
sysconf-sigstksz.h 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
sysdep.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
timer_t_was_int_compat.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-setcontext2.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-setcontext4.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
ucontext_i.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
unwind_longjmp.c Refactor internal-signals.h 2022-06-30 14:56:21 -03:00
unwind-dw2-fde.c
Versions
vfork.S Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
wordexp.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
xstatver.h