diff options
author | Ulrich Drepper <drepper@redhat.com> | 2000-08-05 06:15:04 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2000-08-05 06:15:04 +0000 |
commit | 234dd7a6ba1a9783f43d500f8ee745b2f5b4db5a (patch) | |
tree | 7b78bb63ef3d2c1ebfc89b59759068f2e394df5c /linuxthreads/sysdeps/i386 | |
parent | 0a8d92310f5c5e0c09c8ff9a79ac652a66d5b3da (diff) | |
download | glibc-234dd7a6ba1a9783f43d500f8ee745b2f5b4db5a.tar.gz glibc-234dd7a6ba1a9783f43d500f8ee745b2f5b4db5a.tar.xz glibc-234dd7a6ba1a9783f43d500f8ee745b2f5b4db5a.zip |
Update.
* internals.h: Declare __pthread_max_stacksize. * pthread.c (__pthread_max_stacksize): New variable. (__pthread_initialize_manager): Determine __pthread_initialize_manager value. * manager.c (thread_segment): Return always NULL if FLOATING_STACKS. (pthread_allocate_stack): Allow kernel to choose stack address if FLOATING_STACKS. This also handles variable-sized stacks. Always allocate stack and guardoage together. Use mprotect to change guardpage access. * sysdeps/i386/useldt.h: Define FLOATING_STACKS and ARCH_STACK_MAX_SIZE. * attr.c (__pthread_attr_setstacksize): Also test value against upper limit.
Diffstat (limited to 'linuxthreads/sysdeps/i386')
-rw-r--r-- | linuxthreads/sysdeps/i386/useldt.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/linuxthreads/sysdeps/i386/useldt.h b/linuxthreads/sysdeps/i386/useldt.h index 10cc3d41a3..ebf520cc39 100644 --- a/linuxthreads/sysdeps/i386/useldt.h +++ b/linuxthreads/sysdeps/i386/useldt.h @@ -169,3 +169,9 @@ extern int __modify_ldt (int, struct modify_ldt_ldt_s *, size_t); member))); \ } \ }) + +/* We want the OS to assign stack addresses. */ +#define FLOATING_STACKS 1 + +/* Maximum size o fthe stack if the rlimit is unlimited. */ +#define ARCH_STACK_MAX_SIZE 8*1024*1024 |