aboutsummaryrefslogtreecommitdiff
path: root/elf/Makefile
diff options
context:
space:
mode:
authorSzabolcs Nagy <szabolcs.nagy@arm.com>2020-12-31 12:24:38 +0000
committerSzabolcs Nagy <szabolcs.nagy@arm.com>2021-04-15 09:30:43 +0100
commit8f85075a2e9c26ff7486d4bbaf358999807d215c (patch)
tree02f2f750220acc24e6a57f886167aba51b118917 /elf/Makefile
parentd2b997c7172e9a00895a9deb379f8782fbd2e36f (diff)
downloadglibc-8f85075a2e9c26ff7486d4bbaf358999807d215c.tar.xz
glibc-8f85075a2e9c26ff7486d4bbaf358999807d215c.zip
elf: Add a DTV setup test [BZ #27136]
The test dlopens a large number of modules with TLS, they are reused from an existing test. The test relies on the reuse of slotinfo entries after dlclose, without bug 27135 fixed this needs a failing dlopen. With a slotinfo list that has non-monotone increasing generation counters, bug 27136 can trigger. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Diffstat (limited to 'elf/Makefile')
-rw-r--r--elf/Makefile10
1 files changed, 9 insertions, 1 deletions
diff --git a/elf/Makefile b/elf/Makefile
index de659655dc..c531470ede 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -222,7 +222,8 @@ tests += restest1 preloadtest loadfail multiload origtest resolvfail \
tst-audit14 tst-audit15 tst-audit16 \
tst-single_threaded tst-single_threaded-pthread \
tst-tls-ie tst-tls-ie-dlmopen argv0test \
- tst-glibc-hwcaps tst-glibc-hwcaps-prepend tst-glibc-hwcaps-mask
+ tst-glibc-hwcaps tst-glibc-hwcaps-prepend tst-glibc-hwcaps-mask \
+ tst-tls20
# reldep9
tests-internal += loadtest unload unload2 circleload1 \
neededtest neededtest2 neededtest3 neededtest4 \
@@ -344,6 +345,7 @@ modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \
libmarkermod2-1 libmarkermod2-2 \
libmarkermod3-1 libmarkermod3-2 libmarkermod3-3 \
libmarkermod4-1 libmarkermod4-2 libmarkermod4-3 libmarkermod4-4 \
+ tst-tls20mod-bad
# Most modules build with _ISOMAC defined, but those filtered out
# depend on internal headers.
@@ -1922,3 +1924,9 @@ $(objpfx)tst-rtld-help.out: $(objpfx)ld.so
fi; \
(exit $$status); \
$(evaluate-test)
+
+# Reuses tst-tls-many-dynamic-modules
+tst-tls20mod-bad.so-no-z-defs = yes
+$(objpfx)tst-tls20: $(libdl) $(shared-thread-library)
+$(objpfx)tst-tls20.out: $(objpfx)tst-tls20mod-bad.so \
+ $(tst-tls-many-dynamic-modules:%=$(objpfx)%.so)