summary refs log tree commit diff
path: root/ChangeLog
diff options
context:
space:
mode:
authorSzabolcs Nagy <szabolcs.nagy@arm.com>2017-10-20 17:35:12 +0100
committerSzabolcs Nagy <szabolcs.nagy@arm.com>2017-11-03 14:47:35 +0000
commit0ca3d1d6d096e222346c74601d50e9013c8bb25d (patch)
tree02b9894345e53b26c42029f8147a360811bf29fc /ChangeLog
parent2c1d4e5fe4e722e0b747d6bddd7ce3a6b1766c52 (diff)
downloadglibc-0ca3d1d6d096e222346c74601d50e9013c8bb25d.tar.gz
glibc-0ca3d1d6d096e222346c74601d50e9013c8bb25d.tar.xz
glibc-0ca3d1d6d096e222346c74601d50e9013c8bb25d.zip
[BZ #18572] arm: Disable lazy initialization of tlsdesc entries
Follow up to
https://sourceware.org/ml/libc-alpha/2015-11/msg00272.html

Always do tls descriptor initialization at load time during relocation
processing (as if DF_BIND_NOW were set for the binary) to avoid barriers
at every tls access.  This patch mimics bind-now semantics in the lazy
relocation code of the arm target (elf_machine_lazy_rel).

Ideally the static linker should be updated too to not emit tlsdesc
relocs in DT_REL*, so elf_machine_lazy_rel is not called on them at all.

	[BZ #18572]
	* sysdeps/arm/dl-machine.h (elf_machine_lazy_rel): Do symbol binding
	non-lazily for R_ARM_TLS_DESC.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog6
1 files changed, 6 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 778e41fd45..e1dc25c62e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2017-11-03  Szabolcs Nagy  <szabolcs.nagy@arm.com>
 
+	[BZ #18572]
+	* sysdeps/arm/dl-machine.h (elf_machine_lazy_rel): Do symbol binding
+	non-lazily for R_ARM_TLS_DESC.
+
+2017-11-03  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
 	[BZ #17078]
 	* sysdeps/arm/dl-machine.h (elf_machine_rela): Remove the
 	R_ARM_TLS_DESC case.