glibc/sysdeps
John David Anglin 71b108d7eb hppa: Fix swapcontext
This change fixes the failure of stdlib/tst-setcontext2 and
stdlib/tst-setcontext7 on hppa.  The implementation of swapcontext
in C is broken.  C saves the return pointer (rp) and any non
call-clobbered registers (in this case r3, r4 and r5) on the
stack.  However, the setcontext call in swapcontext pops the
stack and subsequent calls clobber the saved registers.  When
the context in oucp is restored, both tests fault.

Here we rewrite swapcontext in assembly code to avoid using
the stack for register values that need to be used after
restoration.  The getcontext and setcontext routines are
revised to save and restore register ret1 for normal returns.
We copy the oucp pointer to ret1.  This allows access to
the old context after calling getcontext and setcontext.
2022-02-18 20:38:25 +00:00
..
aarch64 elf: Fix runtime linker auditing on aarch64 (BZ #26643) 2022-02-01 14:49:46 -03:00
alpha elf: Remove prelink support 2022-02-10 09:16:12 -03:00
arc Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
arm elf: Remove prelink support 2022-02-10 09:16:12 -03:00
csky Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
generic elf: Remove LD_USE_LOAD_BIAS 2022-02-10 09:18:15 -03:00
gnu Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
hppa hppa: Fix typo 2022-02-14 17:41:59 +00:00
htl htl: Fix initializing the key lock 2022-02-14 19:29:02 +01:00
hurd hurd: Fix pthread_kill on exiting/ted thread 2022-01-15 15:11:54 +01:00
i386 x86/configure.ac: Define PI_STATIC_AND_HIDDEN/SUPPORT_STATIC_PIE 2022-02-14 07:34:54 -08:00
ia64 elf: Issue la_symbind for bind-now (BZ #23734) 2022-02-01 14:49:46 -03:00
ieee754 math: Fix float conversion regressions with gcc-12 [BZ #28713] 2022-01-10 14:27:17 +00:00
m68k Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
mach posix: Replace posix_spawnattr_tc{get,set}pgrp_np with posix_spawn_file_actions_addtcsetpgrp_np 2022-02-02 08:34:16 -03:00
microblaze Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
mips elf: Add <dl-r_debug.h> 2022-01-31 07:05:48 -08:00
nios2 Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
nptl Linux: Use ptrdiff_t for __rseq_offset 2022-02-02 22:37:20 +01:00
or1k elf: Remove prelink support 2022-02-10 09:16:12 -03:00
posix getcwd: Set errno to ERANGE for size == 1 (CVE-2021-3999) 2022-01-24 11:00:17 +05:30
powerpc elf: Remove prelink support 2022-02-10 09:16:12 -03:00
pthread pthread: Use 64 bit time_t stat internally for sem_open (BZ #28880) 2022-02-16 10:20:56 -03:00
riscv Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
s390 elf: Remove prelink support 2022-02-10 09:16:12 -03:00
sh elf: Remove prelink support 2022-02-10 09:16:12 -03:00
sparc elf: Remove prelink support 2022-02-10 09:16:12 -03:00
unix hppa: Fix swapcontext 2022-02-18 20:38:25 +00:00
wordsize-32 Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
wordsize-64 Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
x86 x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #28896] 2022-02-17 15:43:05 -06:00
x86_64 x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #28896] 2022-02-17 15:43:05 -06:00