Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/netbsd-3]: src/doc 926
details: https://anonhg.NetBSD.org/src/rev/3ffb69c4466c
branches: netbsd-3
changeset: 577429:3ffb69c4466c
user: jmc <jmc%NetBSD.org@localhost>
date: Tue Nov 01 20:04:23 2005 +0000
description:
926
diffstat:
doc/CHANGES-3.0 | 43 ++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 42 insertions(+), 1 deletions(-)
diffs (54 lines):
diff -r 07b8448b8f6e -r 3ffb69c4466c doc/CHANGES-3.0
--- a/doc/CHANGES-3.0 Tue Nov 01 20:01:44 2005 +0000
+++ b/doc/CHANGES-3.0 Tue Nov 01 20:04:23 2005 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: CHANGES-3.0,v 1.1.2.293 2005/10/31 13:30:33 tron Exp $
+# $NetBSD: CHANGES-3.0,v 1.1.2.294 2005/11/01 20:04:23 jmc Exp $
A complete list of changes from the initial NetBSD 3.0 branch on 16 March 2005
until the 3.0 release:
@@ -13738,3 +13738,44 @@
the real and effective user and group ids match.
[dan, ticket #922]
+
+lib/libpthread/pthread_rwlock.c 1.12-1.13
+lib/libpthread/pthread_rwlock.c 1.12-1.13
+lib/libpthread/pthread_mutex.c 1.20-1.21
+lib/libpthread/pthread_int.h 1.32-1.33
+lib/libpthread/pthread_sig.c 1.43-1.44
+lib/libpthread/pthread.c 1.43-1.46
+lib/libpthread/sem.c 1.8-1.9
+
+ In pthread_mutex_lock_slow(), pthread_rwlock_timedrdlock() and
+ sem_wait(), call pthread__start() if it hasn't already been called.
+ This avoids an internal assertion from the library if these routines
+ are used before any threads are created and they need to sleep.
+ PR#20256, PR#24241, PR#25722, PR#26096
+
+ Fix the interaction between sigtimedwait() and pthread_kill(),
+ both waking up a sleeping thread and avoiding going to sleep if
+ a signal is already pending. PR#30348
+
+ In pthread_kill() and pthread_suspend_np(), return without doing
+ anything f the target thread is a zombie.
+ In all the functions that didn't do so already, verify a pthread_t
+ before dereferencing it (under #ifdef ERRORCHECK, since these checks
+ are not mandated by the standard).
+
+ Starting the pthread library (ie. calling pthread__start()) before
+ any threads are created turned out to be not such a good idea.
+ there are stronger requirements on what has to work in a forked child
+ while a process is still single-threaded. so take all that stuff
+ back out and fix the problems with single-threaded programs that
+ are linked with libpthread differently, by checking if the library
+ has been started and doing completely different stuff if it hasn't been:
+ - for pthread_rwlock_timedrdlock(), just fail with EDEADLK immediately.
+ - for sem_wait(), the only thing that can unlock the semaphore is a
+ signal handler, so use sigsuspend() to wait for a signal.
+ - for pthread_mutex_lock_slow(), just go into an infinite loop
+ waiting for signals.
+
+ If mlock() fails in pthread_create(), return EAGAIN instead of
+ failing an assertion.
+ [chs, ticket #926]
Home |
Main Index |
Thread Index |
Old Index