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.
This commit is contained in:
Adhemerval Zanella 2018-02-01 10:31:57 -02:00
parent ced64e014c
commit 673e230560
2 changed files with 9 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2018-02-01 Adhemerval Zanella <adhemerval.zanella@linaro.org>
* stdlib/test-atexit-race-common.c (do_test): Check stack size
against PTHREAD_STACK_MIN.
2018-02-01 Dmitry V. Levin <ldv@altlinux.org>
* manual/contrib.texi (Palmer Dabbelt, Arjun Shankar, Florian Weimer):

View File

@ -34,9 +34,12 @@
#include <stdio.h>
#include <stdlib.h>
#include <support/xthread.h>
#include <limits.h>
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);