diff options
author | Ulrich Drepper <drepper@redhat.com> | 1998-06-16 16:30:14 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1998-06-16 16:30:14 +0000 |
commit | bf47fa234412a30f51255b42c92cd29f0b985e79 (patch) | |
tree | e6baf282a978c79392417e7359ec434ffc2cee99 /sysdeps/sparc | |
parent | b301e2eb98b2d20423a5ed4d371f8eb13d703c65 (diff) | |
download | glibc-bf47fa234412a30f51255b42c92cd29f0b985e79.tar.gz glibc-bf47fa234412a30f51255b42c92cd29f0b985e79.tar.xz glibc-bf47fa234412a30f51255b42c92cd29f0b985e79.zip |
Update.
1998-06-16 David S. Miller <davem@dm.cobaltmicro.com> * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_fixup_plt): During rtld bootstrap, always perform flushes as the kernel will emulate it when the underlying cpu does not implement flush. * sysdeps/unix/sysv/linux/sparc/sys/kernel_termios.h: Move... * sysdeps/unix/sysv/linux/sparc/kernel_termios.h: ...to here. * sysdeps/unix/sysv/linux/sparc/sparc32/__sigtrampoline.S: Remove. * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: No longer build trampoline code. * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Branch to label .Lerror not __clone_syscall_error. (.Lerror): Fixup EINVAL setting. * sysdeps/unix/sysv/linux/sparc/sparc32/getgroups.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/setgroups.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list (__syscall_getgroups, __syscall_setgroups): Add. * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction): Member name is k_sa_handler. Use memcpy to copy around sa_mask data. * math/math.h: Include bits/nan.h when compiling for ISO C 9x.
Diffstat (limited to 'sysdeps/sparc')
-rw-r--r-- | sysdeps/sparc/sparc32/dl-machine.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sysdeps/sparc/sparc32/dl-machine.h b/sysdeps/sparc/sparc32/dl-machine.h index 348e0a4bbe..f08eb0381a 100644 --- a/sysdeps/sparc/sparc32/dl-machine.h +++ b/sysdeps/sparc/sparc32/dl-machine.h @@ -271,7 +271,9 @@ elf_machine_fixup_plt (struct link_map *map, const Elf32_Rela *reloc, unsigned long *hwcap = WEAKADDR(_dl_hwcap); int do_flush = (!hwcap || (*hwcap & HWCAP_SPARC_FLUSH)); #else - int do_flush = 0; + /* Unfortunately, this is necessary, so that we can ensure + ld.so will not execute corrupt PLT entry instructions. */ + const int do_flush = 1; #endif /* For thread safety, write the instructions from the bottom and |