diff options
Diffstat (limited to 'nptl/tst-basic7.c')
-rw-r--r-- | nptl/tst-basic7.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/nptl/tst-basic7.c b/nptl/tst-basic7.c index da461e4..ff6b36b 100644 --- a/nptl/tst-basic7.c +++ b/nptl/tst-basic7.c @@ -7,6 +7,21 @@ #include <sys/mman.h> #include <sys/resource.h> +static void use_stack (size_t needed); + +void (*use_stack_ptr) (size_t) = use_stack; + +static void +use_stack (size_t needed) +{ + size_t sz = sysconf (_SC_PAGESIZE); + char *buf = alloca (sz); + memset (buf, '\0', sz); + + if (needed > sz) + use_stack_ptr (needed - sz); +} + static void use_up_memory (void) { @@ -38,6 +53,9 @@ do_test (void) int err; pthread_t tid; + /* Allocate the memory needed for the stack. */ + use_stack_ptr (PTHREAD_STACK_MIN); + use_up_memory (); err = pthread_create (&tid, NULL, child, NULL); |