aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2021-03-09 21:07:24 +0100
committerFlorian Weimer <fweimer@redhat.com>2021-03-09 21:07:24 +0100
commit178c0e48c3c0c65a93185b4b90bb87c4dec14dc9 (patch)
tree5d9a787d46f73c39af755fa8f2b62be7d9652f4b
parent36f6e408845c8c539128f3fb9cb132bf1845a2c8 (diff)
downloadglibc-178c0e48c3c0c65a93185b4b90bb87c4dec14dc9.zip
glibc-178c0e48c3c0c65a93185b4b90bb87c4dec14dc9.tar.gz
glibc-178c0e48c3c0c65a93185b4b90bb87c4dec14dc9.tar.bz2
malloc: Turn tst-mallocstate into a non-internal test
compat_symbol_reference no longer needs tests-internal. Do not build the test at all for newer targets, so that no spurious UNSUPPORTED result is generated. Use compat_symbol_reference for __malloc_initialize_hook as well, eliminating the need for -rdynamic. Reviewed-by: DJ Delorie <dj@redhat.com>
-rw-r--r--malloc/Makefile10
-rw-r--r--malloc/tst-mallocstate.c11
2 files changed, 8 insertions, 13 deletions
diff --git a/malloc/Makefile b/malloc/Makefile
index 583bbef..641967c 100644
--- a/malloc/Makefile
+++ b/malloc/Makefile
@@ -47,7 +47,12 @@ tests-static := \
tst-interpose-static-thread \
tst-malloc-usable-static \
-tests-internal := tst-mallocstate tst-scratch_buffer
+# Test for the malloc_set_state symbol removed in glibc 2.25.
+ifeq ($(have-GLIBC_2.24)$(build-shared),yesyes)
+tests += tst-mallocstate
+endif
+
+tests-internal := tst-scratch_buffer
# The dynarray framework is only available inside glibc.
tests-internal += \
@@ -118,9 +123,6 @@ $(objpfx)tst-malloc-thread-fail-mcheck: $(shared-thread-library)
$(objpfx)tst-malloc-fork-deadlock-mcheck: $(shared-thread-library)
$(objpfx)tst-malloc-stats-cancellation-mcheck: $(shared-thread-library)
-# Export the __malloc_initialize_hook variable to libc.so.
-LDFLAGS-tst-mallocstate = -rdynamic
-
# These should be removed by `make clean'.
extra-objs = mcheck-init.o libmcheck.a
others-extras = mcheck-init.o
diff --git a/malloc/tst-mallocstate.c b/malloc/tst-mallocstate.c
index 776f606..ba72650 100644
--- a/malloc/tst-mallocstate.c
+++ b/malloc/tst-mallocstate.c
@@ -29,8 +29,6 @@
#include "malloc.h"
-#if TEST_COMPAT (libc, GLIBC_2_0, GLIBC_2_25)
-
/* Make the compatibility symbols availabile to this test case. */
void *malloc_get_state (void);
compat_symbol_reference (libc, malloc_get_state, malloc_get_state, GLIBC_2_0);
@@ -310,6 +308,8 @@ init_heap (void)
/* Interpose the initialization callback. */
void (*volatile __malloc_initialize_hook) (void) = init_heap;
+compat_symbol_reference (libc, __malloc_initialize_hook,
+ __malloc_initialize_hook, GLIBC_2_0);
/* Simulate occasional unrelated heap activity in the non-dumped
heap. */
@@ -490,12 +490,5 @@ do_test (void)
return errors;
}
-#else
-static int
-do_test (void)
-{
- return 77;
-}
-#endif
#include <support/test-driver.c>