drd/tests/pth_create_chain: Reduce stack usage
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14394 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/drd/tests/pth_create_chain.c b/drd/tests/pth_create_chain.c
index 2de7689..e077124 100644
--- a/drd/tests/pth_create_chain.c
+++ b/drd/tests/pth_create_chain.c
@@ -3,6 +3,7 @@
#include <assert.h>
+#include <limits.h> /* PTHREAD_STACK_MIN */
#include <stdlib.h>
#include <stdio.h>
#include <pthread.h>
@@ -14,13 +15,18 @@
static void* thread_func(void* p)
{
int thread_count = *(int*)(p);
+ pthread_attr_t attr;
+
if (thread_count > 0)
{
thread_count--;
// std::cout << "create " << thread_count << std::endl;
s_arg[thread_count] = thread_count;
- pthread_create(&s_thread[thread_count], 0, thread_func,
+ pthread_attr_init(&attr);
+ pthread_attr_setstacksize(&attr, PTHREAD_STACK_MIN);
+ pthread_create(&s_thread[thread_count], &attr, thread_func,
&s_arg[thread_count]);
+ pthread_attr_destroy(&attr);
#if 0
std::cout << "created " << thread_count << "(" << s_thread[thread_count]
<< ")" << std::endl;
@@ -31,6 +37,7 @@
int main(int argc, char** argv)
{
+ pthread_attr_t attr;
unsigned thread_count;
int i;
@@ -39,8 +46,11 @@
assert(thread_count >= 1);
thread_count--;
// std::cout << "create " << thread_count << std::endl;
- pthread_create(&s_thread[thread_count], 0, thread_func,
+ pthread_attr_init(&attr);
+ pthread_attr_setstacksize(&attr, PTHREAD_STACK_MIN);
+ pthread_create(&s_thread[thread_count], &attr, thread_func,
&thread_count);
+ pthread_attr_destroy(&attr);
#if 0
std::cout << "created " << thread_count << "(" << s_thread[thread_count]
<< ")" << std::endl;