]> git.ipfire.org Git - thirdparty/glibc.git/commit
arm: Fix tst-gnu2-tls2
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>
Tue, 20 Jan 2026 13:11:10 +0000 (10:11 -0300)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Mon, 2 Feb 2026 17:37:05 +0000 (14:37 -0300)
commitba0fedc2b9412792a410ca580da221f4e5c36599
treefc7e47d15b5be708b18e95748daf87dc87eb4494
parentf8dac91ca3b4123e8c853b1bf6b126ad6829687e
arm: Fix tst-gnu2-tls2

On armv7a vfpv4 tst-gnu2-tls2 fails with:

  open tst-gnu2-tls2mod0.so
  open tst-gnu2-tls2mod1.so
  open tst-gnu2-tls2mod2.so
  close tst-gnu2-tls2mod0.so
  close tst-gnu2-tls2mod1.so
  open tst-gnu2-tls2mod0.so
  open tst-gnu2-tls2mod1.so
  Didn't expect signal from child: got `Aborted'

Because AFTER_TLSDESC_CALL might clobber caller-saved registers and
the zero array might call the memset function resolution, which itself
might clobber some vector registers.

The AFTER_TLSDESC_CALL calls memset and memcmp, and both the
lazy resolution and the routines themselves can clobber the
caller-saved registes used in the tests.

Checked on arm-linux-gnueabihf (armv7-a vpfv4 / QEMU).

Reviewed-by: Florian Weimer <fweimer@redhat.com>
sysdeps/arm/tst-gnu2-tls2.h