diff options
author | Will Newton <will.newton@linaro.org> | 2014-05-23 15:24:30 +0100 |
---|---|---|
committer | Will Newton <will.newton@linaro.org> | 2014-05-27 10:39:18 +0100 |
commit | 36ffe7398af5e5daa5745c64a15226d864378738 (patch) | |
tree | 1b05752395cd7877fc714714d0f24e1654ad6009 /elf/dl-load.c | |
parent | 2482ae433a4249495859343ae1fba408300f2c2e (diff) | |
download | glibc-36ffe7398af5e5daa5745c64a15226d864378738.tar.gz glibc-36ffe7398af5e5daa5745c64a15226d864378738.tar.xz glibc-36ffe7398af5e5daa5745c64a15226d864378738.zip |
ARM: Fix handling of concurrent TLS descriptor resolution
The current code for handling concurrent resolution says that the ABI for _dl_tlsdesc_resolve_hold is the same as that of _dl_tlsdesc_lazy_resolver. However _dl_tlsdesc_resolve_hold is called from the trampoline directly rather than the lazy resolver stub so, for example, r2 has not been pushed so does not needed to be restored. This fixes an intermittent failure in nptl/tst-tls3 when building glibc for arm-linux-gnueabihf with -mtls-dialect=gnu2. ChangeLog: 2014-05-27 Will Newton <will.newton@linaro.org> [BZ #16990] * sysdeps/arm/dl-tlsdesc.S (_dl_tlsdesc_resolve_hold): Save and restore r2 rather than just restoring.
Diffstat (limited to 'elf/dl-load.c')
0 files changed, 0 insertions, 0 deletions