* miscfuncs.cc (struct pthread_wrapper_arg): Add member guardsize.
(pthread_wrapper): Set thread stack guarantee according to guardsize.
Tweak assembler code so that $rax/$eax is not required by GCC to
prepare the wrapper_arg value.
(CygwinCreateThread): Fix deadzone handling. Drop setting a "POSIX"
guardpage (aka page w/ PAGE_NOACCESS). Always use Windows guard
pages instead. On post-XP systems (providing SetThreadStackGuarantee)
always set up stack Windows like with reserved/commited areas and
movable guard pages. Only on XP set up stack fully commited if the
guardpage size is not the default system guardpage size.
Fill out pthread_wrapper_arg::guardsize. Improve comments.
* resource.cc: Implement RSTACK_LIMIT Linux-like.
(DEFAULT_STACKSIZE): New macro.
(DEFAULT_STACKGUARD): Ditto.
(rlimit_stack_guard): New muto.
(rlimit_stack): New global variable holding current RSTACK_LIMIT values.
(__set_rlimit_stack): Set rlimit_stack under lock.
(__get_rlimit_stack): Initialize rlimit_stack from executable header
and return rlimit_stack values under lock.
(get_rlimit_stack): Filtering function to return useful default
stacksize from rlimit_stack.rlim_cur value.
(getrlimit): Call __get_rlimit_stack in RLIMIT_STACK case.
(setrlimit): Call __set_rlimit_stack in RLIMIT_STACK case.
* thread.cc (pthread::create): Fetch default stacksize calling
get_rlimit_stack.
(pthread_attr::pthread_attr): Fetch default guardsize calling
wincap.def_guard_page_size.
(pthread_attr_getstacksize): Fetch default stacksize calling
get_rlimit_stack.
* thread.h (PTHREAD_DEFAULT_STACKSIZE): Remove.
(PTHREAD_DEFAULT_GUARDSIZE): Remove.
(get_rlimit_stack): Declare.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* include/cygwin/version.h (CYGWIN_VERSION_DLL_MAJOR): Bump to 2000.
(CYGWIN_VERSION_DLL_MINOR): Set to 0.
* new-features.xml (ov-new2.0): Rename from ov-new1.7.36 and change
version number to 2.0.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
sourceware.org URLs are concerned.
* Throughout, simplify ulink expressions if the visible text is the
URL anyway.
* faq-programming.xml (faq.programming.dll-relocatable): Remove.
* faq-setup.xml (faq.setup.name-with-space): Change for 1.7.34.
(faq.setup.home): Ditto.
* faq-using.xml (faq.using.printing): Clarify old links and availability
of a2ps and file.
(faq.using.xemacs): Drop outdated version info and pointers to native
XEmacs.
(faq.using.ntemacs): Remove.
* faq-what.xml (faq.what.what): Rephrase to reflect reality.
(faq.what.supported): Ditto.
(faq.what.who): Rephrase slightly.
* legal.xml: Bump copyright.
* setup-net.xml (internet-setup): Fix references to setup executables.
(cygwin-ug-net/cygwin-ug-net.pdf): Create subdir to allow building PDF
even if subdir is missing.
(cygwin-api/cygwin-api.pdf): Ditto.
* configure.ac: Add AC_PROG_INSTALL rule.
* configure: Regenerate.
* new-features.xml (ov-new1.7.33): Add installation of docs.
* new-features.xml: (ov-new1.7.32): Add new section.
* ntsec.xml: Rename top-level section to reflect extension of topics.
Remove old /etc/passwd, /etc/group considerations. Add new sections
explaining Windows to POSIX account mapping. Make setuid sections
third level sections.
* pathnames.xml: Note new method of account mapping for fstab.d/$USER.
* faq-setup.xml: Rework references to /etc/passwd and /etc/group to
reflect changes to account handling.
* faq-using.xml: Ditto.
winsymliks:nativestrict option. Strip out description of symlink types
and refer to new pathnames-symlinks section.
* highlights.xml (ov-hi-files): Rip out most of symlink description and
refer to new pathnames-symlinks section instead.
* new-features.xml (ov-new1.7.19): Add CYGWIN=winsymlinks:nativestrict.
* pathnames.xml (pathnames-symlinks): New section describing symbolic
link handling.