From 673e230560ac874deed6993d8b9ebaf82e73c408 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Thu, 1 Feb 2018 10:31:57 -0200 Subject: stdlib: Fixing test-*atexit*-race tests on ia64 These tests require a new thread stack size set to a value (0x20000) lower than the architecture minimum (0x30000). Set the stack size to PTHREAD_STACK_MIN in this case. Checked on ia64-linux-gnu. * stdlib/test-atexit-race-common.c (do_test): Check stack size against PTHREAD_STACK_MIN. --- stdlib/test-atexit-race-common.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'stdlib') diff --git a/stdlib/test-atexit-race-common.c b/stdlib/test-atexit-race-common.c index 4d7f911..8adf133 100644 --- a/stdlib/test-atexit-race-common.c +++ b/stdlib/test-atexit-race-common.c @@ -34,9 +34,12 @@ #include #include #include +#include const size_t kNumThreads = 1024; const size_t kNumHandlers = 1024; +const size_t kStacksize = + 0x20000 < PTHREAD_STACK_MIN ? PTHREAD_STACK_MIN : 0x20000; static void * threadfunc (void *unused) @@ -60,7 +63,7 @@ do_test (void) /* With default 8MiB Linux stack size, creating 1024 threads can cause VM exhausiton on 32-bit machines. Reduce stack size of each thread to 128KiB for a maximum required VM size of 128MiB. */ - xpthread_attr_setstacksize (&attr, 128 * 1024); + xpthread_attr_setstacksize (&attr, kStacksize); for (i = 0; i < kNumThreads; ++i) { xpthread_create (&attr, threadfunc, NULL); -- cgit v1.1