about summary refs log tree commit diff
path: root/linuxthreads
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-11-08 21:20:06 +0000
committerUlrich Drepper <drepper@redhat.com>2000-11-08 21:20:06 +0000
commitd3d99893eeedbb681f6b9b76427c33129d69834d (patch)
tree104144f66e8fba0b8b8d1fd958b9df8bd2236c56 /linuxthreads
parenta1e88b9a2fe01ed6bb3ba749af7d98e89bb14d3f (diff)
downloadglibc-d3d99893eeedbb681f6b9b76427c33129d69834d.tar.gz
glibc-d3d99893eeedbb681f6b9b76427c33129d69834d.tar.xz
glibc-d3d99893eeedbb681f6b9b76427c33129d69834d.zip
Update.
	* catgets/gencat.c (main): Don't use exit() to avoid warnings with
	broken compilers.

	* include/features.h (__STDC_ISO_10646__): Correct value to be
	200009L.  Patch by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>.

2000-11-08  H.J. Lu  <hjl@gnu.org>

	* pwd/Versions (GLIBC_2.1.2): Add getpwnam_r.

2000-11-08  Jakub Jelinek  <jakub@redhat.com>

	* string/bits/string2.h: Check if _USE_STRING_ARCH_ macros are
	defined, not _HAVE_STRING_ARCH_.
	* sysdeps/i386/bits/string.h (_USE_STRING_ARCH_memset,
	_USE_STRING_ARCH_strchr): Define.
	* sysdeps/i386/i486/bits/string.h (_USE_STRING_ARCH_memset,
	_USE_STRING_ARCH_strchr): Define.
	* sysdeps/sparc/bits/string.h: New file.

2000-11-08  Bruno Haible  <haible@clisp.cons.org>

	* locale/C-translit.h.in: Tweak <U2014> result.
	* locale/C-translit.h: Regenerated.

2000-11-08  Ulrich Drepper  <drepper@redhat.com>

	* posix/unistd.h: Add attribute((const)) to sysconf prototype.
Diffstat (limited to 'linuxthreads')
-rw-r--r--linuxthreads/ChangeLog11
-rw-r--r--linuxthreads/linuxthreads.texi75
2 files changed, 80 insertions, 6 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index 5bfee849b5..685f8ef04f 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -1,3 +1,10 @@
+2000-11-08  Bruce Mitchener  <bruce@cubik.org>
+
+	* linuxthreads.texi:  Add documentation for pthreads attributes
+	guardsize, stackaddr, stacksize, and stack.  Fix typo in previous
+	patch.  Document pthread_[sg]etconcurrency().  Mark
+	pthread_mutexattr_[sg]ettype() as POSIX rather than GNU.
+
 2000-11-07  Ulrich Drepper  <drepper@redhat.com>
 
 	* sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_MESSAGE_PASSING):
@@ -19,7 +26,7 @@
 2000-10-29  Ulrich Drepper  <drepper@redhat.com>
 
 	* attr.c (__pthread_attr_setguardsize): Don't round guardsize
-	here.  Reported by Bruce <bruce@puremagic.com>.
+	here.  Reported by Bruce Mitchener <bruce@cubik.org>.
 
 	* linuxthreads.texi: Changes terminology to 'type' from 'kind' when
 	discussing mutexes. (As per the Unix98 name for the API.)
@@ -30,7 +37,7 @@
 	PTHREAD_MUTEXATTR_ADAPTIVE_NP.
 	Begins to introduce discussion of the ``timed'' mutex type.  This
 	discussion is currently incomplete.
-	Patch by Bruce <bruce@puremagic.com>.
+	Patch by Bruce Mitchener <bruce@cubik.org>.
 
 2000-10-26  Kazumoto Kojima  <kkojima@rr.iij4u.or.jp>
 	    Yutaka Niibe  <gniibe@chroot.org>
diff --git a/linuxthreads/linuxthreads.texi b/linuxthreads/linuxthreads.texi
index a3096b0c1f..1f2d1a2fac 100644
--- a/linuxthreads/linuxthreads.texi
+++ b/linuxthreads/linuxthreads.texi
@@ -181,10 +181,15 @@ left in an undefined state, and you must not use it again in a call to
 any pthreads function until it has been reinitialized.
 @end deftypefun
 
+@findex pthread_attr_setdetachstate
+@findex pthread_attr_setguardsize
 @findex pthread_attr_setinheritsched
 @findex pthread_attr_setschedparam
 @findex pthread_attr_setschedpolicy
 @findex pthread_attr_setscope
+@findex pthread_attr_setstack
+@findex pthread_attr_setstackaddr
+@findex pthread_attr_setstacksize
 @comment pthread.h
 @comment POSIX
 @deftypefun int pthread_attr_setattr (pthread_attr_t *@var{obj}, int @var{value})
@@ -198,10 +203,15 @@ for the @var{attr} being modified, they will return the error code
 below.
 @end deftypefun
 
+@findex pthread_attr_getdetachstate
+@findex pthread_attr_getguardsize
 @findex pthread_attr_getinheritsched
 @findex pthread_attr_getschedparam
 @findex pthread_attr_getschedpolicy
 @findex pthread_attr_getscope
+@findex pthread_attr_getstack
+@findex pthread_attr_getstackaddr
+@findex pthread_attr_getstacksize
 @comment pthread.h
 @comment POSIX
 @deftypefun int pthread_attr_getattr (const pthread_attr_t *@var{obj}, int *@var{value})
@@ -279,8 +289,45 @@ interpreted relative to the priorities of the other threads of the
 process, regardless of the priorities of other processes.
 
 @code{PTHREAD_SCOPE_PROCESS} is not supported in LinuxThreads.  If you
-try to set the scope to this value @code{pthread_attr_setscope} will
+try to set the scope to this value, @code{pthread_attr_setscope} will
 fail and return @code{ENOTSUP}.
+
+@item stackaddr
+Provide an address for an application managed stack.  The size of the
+stack must be at least @code{PTHREAD_STACK_MIN}.
+
+@item stacksize
+Change the size of the stack created for the thread.  The value defines
+the minimum stack size, in bytes.
+
+If the value exceeds the system's maximum stack size, or is smaller
+than @code{PTHREAD_STACK_MIN}, @code{pthread_attr_setstacksize} will
+fail and return @code{EINVAL}.
+
+@item stack
+Provide both the address and size of an application managed stack to
+use for the new thread.  The base of the memory area is @var{stackaddr}
+with the size of the memory area, @var{stacksize}, measured in bytes.
+
+If the value of @var{stacksize} is less than @code{PTHREAD_STACK_MIN},
+or greater than the system's maximum stack size, or if the value of
+@var{stackaddr} lacks the proper alignment, @code{pthread_attr_setstack}
+will fail and return @code{EINVAL}.
+
+@item guardsize
+Change the minimum size in bytes of the guard area for the thread's
+stack.  The default size is a single page.  If this value is set, it
+will be rounded up to the nearest page size.  If the value is set to 0,
+a guard area will not be created for this thread.  The space allocated
+for the guard area is used to catch stack overflow.  Therefore, when
+allocating large structures on the stack, a larger guard area may be
+required to catch a stack overflow.
+
+If the caller is managing their own stacks (if the @code{stackaddr}
+attribute has been set), then the @code{guardsize} attribute is ignored.
+
+If the value exceeds the @code{stacksize}, @code{pthread_atrr_setguardsize}
+will fail and return @code{EINVAL}.
 @end table
 
 @node Cancellation
@@ -722,9 +769,9 @@ The default mutex type is ``timed'', that is, @code{PTHREAD_MUTEX_TIMED_NP}.
 @c This doesn't describe how a ``timed'' mutex behaves. FIXME
 
 @comment pthread.h
-@comment GNU
+@comment POSIX
 @deftypefun int pthread_mutexattr_settype (pthread_mutexattr_t *@var{attr}, int @var{type})
-@code{pthread_mutexattr_settyp3} sets the mutex type attribute in
+@code{pthread_mutexattr_settype} sets the mutex type attribute in
 @var{attr} to the value specified by @var{type}.
 
 If @var{type} is not @code{PTHREAD_MUTEX_ADAPTIVE_NP},
@@ -739,7 +786,7 @@ and @code{PTHREAD_MUTEX_ERRORCHECK} are also permitted.
 @end deftypefun
 
 @comment pthread.h
-@comment GNU
+@comment POSIX
 @deftypefun int pthread_mutexattr_gettype (const pthread_mutexattr_t *@var{attr}, int *@var{type})
 @code{pthread_mutexattr_gettype} retrieves the current value of the
 mutex type attribute in @var{attr} and stores it in the location pointed
@@ -1561,3 +1608,23 @@ The @var{target_thread} is invalid or has already terminated.
 
 @end table
 @end deftypefun
+
+@comment pthread.h
+@comment POSIX
+@deftypefun int pthread_setconcurrency (int @var{level})
+@code{pthread_setconcurrency} is unused in LinuxThreads due to the lack
+of a mapping of user threads to kernel threads.  It exists for source
+compatibility.  It does store the value @var{level} so that it can be
+returned by a subsequent call to @code{pthread_getconcurrency}.  It takes
+no other action however.
+@end deftypefun
+
+@comment pthread.h
+@comment POSIX
+@deftypefun int pthread_getconcurrency ()
+@code{pthread_getconcurrency} is unused in LinuxThreads due to the lack
+of a mapping of user threads to kernel threads.  It exists for source
+compatibility.  However, it will return the value that was set by the
+last call to @code{pthread_setconcurrency}.
+@end deftypefun
+