]> sourceware.org Git - glibc.git/commit
x86_64: Avoid lazy relocation of tlsdesc [BZ #27137]
authorSzabolcs Nagy <szabolcs.nagy@arm.com>
Thu, 11 Feb 2021 11:29:23 +0000 (11:29 +0000)
committerSzabolcs Nagy <szabolcs.nagy@arm.com>
Thu, 15 Apr 2021 08:47:37 +0000 (09:47 +0100)
commit8f7e09f4dbdb5c815a18b8285fbc5d5d7bc17d86
treeac6a18f553ab719f7109169f54dcbe246e257b3e
parentc0669ae1a629e16b536bf11cdd0865e0dbcf4bee
x86_64: Avoid lazy relocation of tlsdesc [BZ #27137]

Lazy tlsdesc relocation is racy because the static tls optimization and
tlsdesc management operations are done without holding the dlopen lock.

This similar to the commit b7cf203b5c17dd6d9878537d41e0c7cc3d270a67
for aarch64, but it fixes a different race: bug 27137.

Another issue is that ld auditing ignores DT_BIND_NOW and thus tries to
relocate tlsdesc lazily, but that does not work in a BIND_NOW module
due to missing DT_TLSDESC_PLT. Unconditionally relocating tlsdesc at
load time fixes this bug 27721 too.
sysdeps/x86_64/dl-machine.h
This page took 0.040406 seconds and 5 git commands to generate.