aboutsummaryrefslogtreecommitdiff
path: root/linuxthreads
AgeCommit message (Collapse)Author
2000-09-11Update.Ulrich Drepper
2000-09-11 Ulrich Drepper <drepper@redhat.com> * sysdeps/pthread/pthread.h: Declare pthread_attr_getstack and pthread_attr_setstack. * Versions [libpthread] (GLIBC_2.2): Export pthread_attr_getstack and pthread_attr_setstack. * attr.c (pthread_attr_getstack, pthread_attr_setstack): New functions.
2000-09-05Update.Ulrich Drepper
* Examples/ex14.c: New file. * Makefile (tests): Add ex14. * Makefile (tests): Add ecmutex.
2000-09-05Intensive test for POSIX barriers.Ulrich Drepper
2000-09-05Update.Ulrich Drepper
2000-09-05 Ulrich Drepper <drepper@redhat.com> * mutex.c (__pthread_mutex_unlock): Correct test for already unlocked mutex. Patch by dtc@cmucl.cons.org. * ecmutex.c: New file.
2000-09-05Test for error checking mutex.Ulrich Drepper
2000-09-05(__pthread_mutex_unlock): Correct test for already unlocked mutex.Ulrich Drepper
2000-09-05Update.Ulrich Drepper
2000-09-04 Andreas Schwab <schwab@suse.de> * elf/Makefile (all-dl-routines): New variable. (elide-routines.os): Use it instead of $(dl-routines). (all-rtld-routines): New variable. (extra-objs): Use it instead of $(rtld-routines). ($(objpfx)dl-allobjs.os): Likewise. * sysdeps/ia64/Makefile [$(subdir) = elf]: Modify sysdep-dl-routines and sysdep_routines instead of rtld-routines and dl-routines. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconv/gconv_trans.c (__gconv_translit_find): Update open_count. Set fname to NULL if the module wasn't found. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconv/gconv_trans.c (__gconv_translit_find): Don't set need_so to true if trans->name already ends in ".so". 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconv/gconv_int.h (__gconv_release_shlib): Change return type to void. * iconv/gconv_dl.c (do_release_shlib): Don't decrement the counter below -TRIES_BEFORE_UNLOAD-1, to avoid wraparound. (__gconv_release_shlib): Change return type to void. * iconv/gconv_builtin.c (__gconv_get_builtin_trans): Don't set step->__counter here. * iconv/gconv_db.c (free_derivation): Don't call a step's destructor if the reference is zero. (release_step): New function. (gen_steps): Always initialize the __counter to 1. Use release_step. Don't call the destructor on the step whose initializer failed. (increment_counter): Use release_step. Don't normally run destructors here. (__gconv_close_transform): Use release_step. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconv/gconv_simple.c (encoding_mask, encoding_byte): Remove. (__gconv_transform_internal_utf8) [BODY]: Use simple shifts instead. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/euc-tw.c (BODY for FROM_LOOP): Initialize ch2 correctly. If the first byte is 0x8E, don't ask for 4 bytes until it has been verified that the second byte is valid. Leave it to cns11643_to_ucs4 to check for incomplete input. * iconvdata/cns11643.h (cns11643_to_ucs4): The plane number is ch - 0x20 - offset, not ch - 0x21 - offset. Upper bound for __cns11643l1_to_ucs4_tab is 0x21f2, not 0x2196. (ucs4_to_cns11643): Fix mapping for ranges 0x3105..0x3129 and 0x9f9d..0x9fa5. * iconvdata/cns11643l1.h (cns11643l1_to_ucs4): Upper bound for __cns11643l1_to_ucs4_tab is 0x21f2, not 0x2196. (ucs4_to_cns11643l1): Fix mapping for range 0x3105..0x3129. * iconvdata/cns11643l1.c (__cns11643l1_from_ucs4_tab6): Extend upto index 0x0052. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconv/gconv_db.c (find_derivation): Always use the least-cost solution. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/big5.c (BODY for FROM_LOOP): Bytes 0x81..0xA0, 0xFA..0xFF are invalid. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/jis0208.c (__jis0208_to_ucs): Map EUC-JP 0xA1C0 to U+005C. * iconvdata/jis0212.c (__jisx0212_to_ucs): Map EUC-JP 0x8FA2B7 to U+007E. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/sjis.c (cjk_block1): Map 0x815F to U+005C. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/iso_6937-2.c (to_ucs4): Map 0xB4 to U+00D7. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/tst-tables.sh: New file. * iconvdata/tst-table.sh: New file. * iconvdata/tst-table-from.c: New file. * iconvdata/tst-table-to.c: New file. * iconvdata/tst-table-charmap.sh: New file. * iconvdata/Makefile (test-srcs): Set to tst-table-from tst-table-to. (distribute): Add tst-tables.sh, tst-table.sh, tst-table-charmap.sh, tst-table-from.c, tst-table-to.c, EUC-JP.irreversible, ISIRI-3342.irreversible, SJIS.irreversible. (tests): Add dependency on tst-tables.out. (tst-tables.out, tst-tables-clean): New rules. (do-tests-clean, common-mostlyclean): Require tst-tables-clean. * iconvdata/ISIRI-3342.irreversible: New file. * iconvdata/EUC-JP.irreversible: New file. * iconvdata/SJIS.irreversible: New file. 2000-09-04 Ulrich Drepper <drepper@redhat.com> * manual/locale.texi (General Numeric): Update description of representation of the grouping information in the locale data. Patch by Gaute B. Strokkenes <gs234@cam.ac.uk>. Reported by Rob Levin <lilo@transvirtual.com>.
2000-09-05Update.Ulrich Drepper
2000-09-03 Bruno Haible <haible@clisp.cons.org> * charmaps/EUC-TW: Add commented non-reversible mappings. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * charmaps/CP949: New file. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * charmaps/GB2312: Remove 0x80..0xA0, 0xAA..0xAF, 0xF8..FF. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * charmaps/EUC-JP: Nonreversibly map 0xA1C0 to U+005C and 0x8FA2B7 to U+007E.
2000-09-03Update.Ulrich Drepper
2000-09-03 Ulrich Drepper <drepper@redhat.com> * time/sys/time.h (gettimeofday): Move restrict for tz parameter to the typedefs of __timezone_ptr_t. Reported by MATSUMURA Hiromitsu <coji2@mb.infoweb.ne.jp>. 2000-09-02 Jakub Jelinek <jakub@redhat.com> * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Increment counter in the loop. 2000-09-01 H.J. Lu <hjl@gnu.org> * Makeconfig (built-program-cmd): Don't use the dynamic linker to run a binary if it is in $(tests-static). * Rules (binaries-static): Add $(tests-static).
2000-09-03Update.Ulrich Drepper
2000-09-03 Ulrich Drepper <drepper@redhat.com> * spinlock.h (testandset): Add cast to avoid warning. Patch by Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.
2000-09-02* sysdeps/pthread/timer_routines.c: Include stdlib.h for abort Andreas Jaeger
prototype. 2000-09-02 Andreas Jaeger <aj@suse.de> * sysdeps/pthread/timer_routines.c: Include stdlib.h for abort prototype.
2000-09-01Update.Ulrich Drepper
* libio/libio.h (_IO_flockfile, _IO_funlockfile): Fix typo in last patch (_mode -> _flags).
2000-09-01Update.Ulrich Drepper
[_IO_MTSAFE_IO] (_IO_flockfile, _IO_funlockfile): Add macros which test _IO_USER_LOCK flag first.
2000-09-01Update.Ulrich Drepper
* libio/Makefile (headers): Add stdio_ext.h. (routines): Add __fbufsize, __freading, __fwriting, __freadable, __fwritable, __flbf, __fpurge, __fpending, and __fsetlocking. * libio/Versions [libc] (GLIBC_2.2): Add __fbufsize, __freading, __fwriting, __freadable, __fwritable, __flbf, __fpurge, __fpending, __fsetlocking, and _flushlbf. * libio/__fbufsize.c: New file. * libio/__flbf.c: New file. * libio/__fpending.c: New file. * libio/__fpurge.c: New file. * libio/__freadable.c: New file. * libio/__freading.c: New file. * libio/__fsetlocking.c: New file. * libio/__fwritable.c: New file. * libio/__fwriting.c: New file. * libio/stdio_ext.h: New file. * libio/genops.c (_IO_flush_all_linebuffered): Add alias _flushlbf. * libio/libio.h (_IO_USER_LOCK): Define.
2000-09-01Update.Ulrich Drepper
2000-09-01 Ulrich Drepper <drepper@redhat.com> * lockfile.c (__flockfile): If _IO_USER_LOCK bit is set don't do anything. (__funlockfile): Likewise. (__ftrylockfile): If _IO_USER_LOCK bit is set return always 0.
2000-08-30Update.Ulrich Drepper
* iconvdata/big5hkscs.c: Rewritten. Regenerate data from the official file. * iconvdata/TESTS: Add BIG5HKSCS entry. * iconvdata/testdata/BIG5HKSCS: New file. * iconvdata/testdata/BIG5HKSCS..UTF8: New file. * iconvdata/big5.c (BODY for FROM_LOOP): Remove condition which is always true.
2000-08-25Update.Ulrich Drepper
2000-08-25 Ulrich Drepper <drepper@redhat.com> * elf/Makefile (LDFLAGS-nodelete): Add -rdynamic. * elf/nodelete.c (fini_ran): New global variable. (do_test): Before every dlclose call clear fini_ran and test afterwards that it is not set by the destructors. * elf/nodelmod1.c: Add destructor which sets fini_ran. * elf/nodelmod2.c: Likewise. * elf/nodelmod4.c: Likewise.
2000-08-25Update.Ulrich Drepper
* elf/dl-close.c (_dl_close): Don't run destructors of objects marked DF_1_NODELETE.
2000-08-25Update.Ulrich Drepper
2000-08-25 Ulrich Drepper <drepper@redhat.com> * sysdeps/posix/system.c (__libc_system): We cannot use vfork here since we call sigaction in the child.
2000-08-25(PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP): Defined. ↵Ulrich Drepper
(PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP: Defined.
2000-08-24Update.Andreas Jaeger
* Examples/ex13.c: Include <string.h> for strerror prototype and <stdlib.h> for abort prototype.
2000-08-24Update.Andreas Jaeger
* sysdeps/unix/sysv/syscalls.list: Likewise.
2000-08-24Update.Andreas Jaeger
Move inclusion of test-skeleton to front to have prototype for add_temp_file.
2000-08-22* Examples/ex13.c: New test by Kurt Garloff <garloff@suse.de>.Andreas Jaeger
* Makefile (tests): Add ex13. 2000-08-22 Andreas Jaeger <aj@suse.de> * Examples/ex13.c: New test by Kurt Garloff <garloff@suse.de>. * Makefile (tests): Add ex13.
2000-08-21Update.Ulrich Drepper
* misc/sys/cdefs.h: Define __restrict_arr. * include/sys/time.h: Add restrict where required by AGd4. * inet/arpa/inet.h: Likewise. * io/sys/stat.h: Likewise. * io/sys/statvfs.h: Likewise. * misc/search.h: Likewise. * misc/sys/select.h: Likewise. * posix/glob.h: Likewise. * posix/regex.h: Likewise. * posix/spawn.h: Likewise. * posix/unistd.h: Likewise. * rt/aio.h: Likewise. * signal/signal.h: Likewise. * socket/sys/socket.h: Likewise. * stdlib/ucontext.h: Likewise. * streams/stropts.h: Likewise. * string/string.h: Likewise. * time/time.h: Likewise. * time/sys/time.h: Likewise. * posix/spawn.h: Add declarations for posix_spawnattr_getscheparam and posix_spawnattr_setscheparam. * libio/stdio.h: Make cuserid prototype again available for all XPG versions.
2000-08-17Update.Greg McGary
2000-08-17 Greg McGary <greg@mcgary.org> * Makeconfig (link-extra-libs-bounded): Strip `-bp' suffix from test program name when constructing suffix for $(LDLIBS-*). (bounded-thread-library): New variable. * crypt/Makefile [build-shared, build-static] (libcrypt-dep): Remove variable. ($(addprefix $(objpfx),$(tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. * linuxthreads/Makefile (libpthread, librt): Remove variables. (librt-tests): Add variable. (tests): Use it. [build-shared, build-static] ($(addprefix $(objpfx),$(tests)), $(addprefix $(objpfx),$(librt-tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp), $(librt-tests:%=$(objpfx)%-bp)): Add dependencies. * math/Makefile (LDLIBS-*): Remove variables (they are redundant). [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. * misc/Makefile [build-bounded] ($(objpfx)tst-tsearch-bp): Add dependencies. * rt/Makefile [build-shared, build-static] ($(addprefix $(objpfx),$(tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. 2000-08-17 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: s/\(CHECK\w+\)opt/\1_NULL_OK/ * sysdeps/unix/make-syscalls.sh: Likewise. * sysdeps/unix/sysv/linux/shmctl.c: Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise. 2000-08-17 Greg McGary <greg@mcgary.org> * sysdeps/i386/fpu/s_frexp.S: Check bounds. Wrap extern symbols in BP_SYM (). * sysdeps/i386/fpu/s_frexpf.S: Likewise. * sysdeps/i386/fpu/s_frexpl.S: Likewise. * sysdeps/i386/fpu/s_remquo.S: Likewise. * sysdeps/i386/fpu/s_remquof.S: Likewise. * sysdeps/i386/fpu/s_remquol.S: Likewise. * sysdeps/i386/fpu/s_sincos.S: Likewise. * sysdeps/i386/fpu/s_sincosf.S: Likewise. * sysdeps/i386/fpu/s_sincosl.S: Likewise. * sysdeps/unix/sysv/linux/i386/clone.S: Likewise. * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
2000-08-16Update.Ulrich Drepper
2000-08-15 Marko Myllynen <myllynen@lut.fi> * inet/netinet/icmp6.h: Added Mobile IPv6 definitions.
2000-08-14Update.Ulrich Drepper
2000-08-12 Andreas Jaeger <aj@suse.de> * include/features.h (__STDC_ISO_10646__): Define. Reported by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>. * include/features.h (__USE_ISOC99): Define for _XOPEN_SOURCE >= 600. * locale/langinfo.h: Define YESSTR and NOSTR also for XPG4 (but not for revision 6 and up). * posix/sys/types.h: Define __need_timer_t and __need_clockid_t before including <time.h>. * time/time.h: Allow __need_timer_t and __need_clockid_t to be defined to get definitions of just these types. * signal/signal.h: Define thread signal handling functions also for POSIX95. * sysdeps/unix/sysv/linux/bits/types.h: Define thread types also for POSIX95. * sysdeps/unix/sysv/linux/alpha/bits/types.h: Likewise. * sysdeps/unix/sysv/linux/ia64/bits/types.h: Likewise. * sysdeps/unix/sysv/linux/mips/bits/types.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/types.h: Likewise. * sysvipc/sys/shm.h: Define pid_t for XPG. * wcsmbs/wchar.h: Make the various wide char string and stream functions available for the respective XPG versions.
2000-08-12Update.Andreas Jaeger
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_GETLK64, F_SETLK64, F_SETLKW64): Define with F_GETLK etc.
2000-08-12 * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Add .set ↵Andreas Jaeger
mips2 for assembler. * sysdeps/mips/pt-machine.h (testandset): Add .set mips2 for assembler. (__compare_and_swap): Likewise. * sysdeps/mips/pspinlock.c (__pthread_spin_lock): Likewise.
2000-08-10Update.Ulrich Drepper
2000-08-10 Ulrich Drepper <drepper@redhat.com> * timezone/zic.c: Update from tzcode2000f. * timezone/australasia: Update from tzdata2000f. * timezone/europe: Likewise. * timezone/southamerica: Likewise. * timezone/yearistype: Likewise.
2000-08-08Update.Ulrich Drepper
2000-08-08 Ulrich Drepper <drepper@redhat.com> * locale/linereader.c (get_string): Don't print an error is a string contains an unknown character.
2000-08-05Update.Ulrich Drepper
2000-08-05 Ulrich Drepper <drepper@redhat.com> * Banner: Bump version number to 0.9. Always allocate stack and guardpage together. Use mprotect to
2000-08-05Update.Ulrich Drepper
* Makefile (tests): Add tststack. Add rule to build the program. * tststack.c: New file.
2000-08-05Update.Ulrich Drepper
* 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.
2000-08-05Update.Ulrich Drepper
2000-08-04 Ulrich Drepper <drepper@redhat.com> * manager.c (__pthread_nonstandard_stacks): Define only if THREAD_SELF is not defined. (pthread_allocate_stack): Always initialize gardaddr to a correct value. (pthread_handle_create): Unmap thread with one call. (pthread_free): Remove test for initial thread before removing stack. Unmap stack with one call. * pthread.c (__pthread_initial_thread): Initialize p_userstack to 1 to avoid removing the stack.
2000-08-03Update.Ulrich Drepper
2000-07-27 Jes Sorensen <jes@linuxcare.com> * linuxthreads/sysdeps/ia64/pspinlock.c (__pthread_spin_lock): Add load of spin lock to prime the cache before the atomic compare and exchange operation (cmpxchg4). This avoids the spinning on the cmpxchg4 instruction and reduces movement of the cache line back and forth between the processors (explanation by Asis K. Mallick from Intel). This basically makes the implementation operate the same as the Linux kernel implementation. * linuxthreads/shlib-versions: Use GLIBC_2_2 for Linux/ia64. * linuxthreads/sysdeps/ia64/pspinlock.c: New file.
2000-08-03Update.Ulrich Drepper
2000-08-03 Ulrich Drepper <drepper@redhat.com> * iconvdata/big5.c: Updated. Patch by Tung-Han Hsieh <thhsieh@twcpro.phys.ntu.edu.tw>.
2000-08-02Update.Andreas Jaeger
2000-08-02 Andreas Jaeger <aj@suse.de> * linuxthreads/sysdeps/s390/pspinlock.c: New file. * linuxthreads/sysdeps/s390/pt-machine.h: New file. Patches by Martin Schwidefsky <schwidefsky@de.ibm.com>.
2000-08-02Linux/S390 POSIX spinlock implementation.Andreas Jaeger
2000-07-28* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Implement for Andreas Jaeger
R3K. * sysdeps/mips/pt-machine.h (testandset): Likewise. 2000-07-12 Maciej W. Rozycki <macro@ds2.pg.gda.pl> * sysdeps/mips/pspinlock.c (__pthread_spin_lock): Implement for R3K. * sysdeps/mips/pt-machine.h (testandset): Likewise.
2000-07-27Update.Ulrich Drepper
2000-07-27 Jes Sorensen <jes@linuxcare.com> * sysdeps/unix/sysv/linux/ia64/fork.c: Make __libc_fork the strong name and add weak alias for __fork. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Change llseek, pread & pwrite to use __libc_<name> as strong names instead of __syscall_<name>. * include/sched.h: Add clone2 prototype. 2000-07-26 Jes Sorensen <jes@linuxcare.com> * sysdeps/unix/sysv/linux/ia64/sysdep.h (ENTRY): Don't declare the procedure name twice. 2000-07-27 Philip Blundell <philb@gnu.org> * malloc/malloc.c (HAVE_MREMAP): Undo change of 1997-12-04.
2000-07-26Initialize p_sem_avail.Andreas Jaeger
2000-07-26 Andreas Jaeger <aj@suse.de> * pthread.c: Initialize p_sem_avail.
2000-07-26Update.Ulrich Drepper
* internals.h (struct __pthread_descr_struct): Add p_sem_avail.
2000-07-26Update.Ulrich Drepper
* internals.h (strict __pthread_descr_struct): Add p_sem_avail. * semaphore.c: Handle spurious wakeups. * sysdeps/pthread/pthread.h: Add back PTHREAD_MUTX_FAST_NP as an alias for PTHREAD_MUTEX_ADAPTIVE_NP for source code compatibility. * pthread.c (__pthread_set_own_extricate): Use THREAD_GETMEM. (__pthread_wait_for_restart): Likewise. * condvar.c (pthread_cond_wait): Also check whether thread is cancelable before aborting loop. (pthread_cond_timedwait): Likewise.
2000-07-26Update.Ulrich Drepper
2000-07-25 Ulrich Drepper <drepper@redhat.com> * signals.c (pthread_sighandler): Remove special code to restrore %gs on x86. (pthread_sighandler_t): Likewise.
2000-07-25Update.Ulrich Drepper
* libio/wfileops.c (_IO_wfile_underflow): Handle not entirely
2000-07-25Update.Ulrich Drepper
2000-07-25 Mark Kettenis <kettenis@gnu.org> * nss/nss_files/files-netgrp.c (strip_whitespace): New function. (_nss_netgroup_parseline): Use strip_whitespace to strip off any leading and trailing spaces from host, user and domain name. 2000-07-25 Jes Sorensen <jes@linuxcare.com> * csu/defs.awk: Add support for need_endp. 2000-07-25 Mark Kettenis <kettenis@gnu.org> * resolv/resolv.h: Remove __P from res_send_qhook and res_send_rhook typedefs. 2000-07-25 Bruno Haible <haible@clisp.cons.org> * intl/tst-translit.c (main): Unset OUTPUT_CHARSET.
2000-07-24Update.Ulrich Drepper
* pthread.c (__pthread_initial_thread): Update initializer. (__pthread_manager_thread): Likewise. (pthread_initialize): Move setrlimit call to... (__pthread_initialize_manager): ...here. (__pthread_reset_main_thread): Reset also soft limit on stack size.
2000-07-24(__pthread_initial_thread): Update initializer. (__pthread_manager_thread): ↵Ulrich Drepper
Likewise. (pthread_initialize): Move setrlimit call to... (__pthread_initialize_manager): ...here. (__pthread_reset_main_thread): Reset also soft limit on stack size.