aboutsummaryrefslogtreecommitdiff
path: root/linuxthreads/ChangeLog
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-04-10 21:46:48 +0000
committerUlrich Drepper <drepper@redhat.com>2001-04-10 21:46:48 +0000
commit58f46c794a3dc049ae8c53dab76d83ea23408479 (patch)
tree5695211b81ee73dc571857728e377b59a6938d92 /linuxthreads/ChangeLog
parentbf9d1166a06c7181e50d7d5c9a2cde665007ee1d (diff)
downloadglibc-58f46c794a3dc049ae8c53dab76d83ea23408479.tar
glibc-58f46c794a3dc049ae8c53dab76d83ea23408479.tar.gz
glibc-58f46c794a3dc049ae8c53dab76d83ea23408479.tar.bz2
glibc-58f46c794a3dc049ae8c53dab76d83ea23408479.zip
Update.
2001-04-10 Martin Schwidefsky <schwidefsky@de.ibm.com> * sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S: Fix return value of getcontext. * sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S: Fix return value of setcontext. * sysdeps/unix/sysv/linux/s390/s390-64/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/s390/swapcontext.c: Skip setcontext call by changing the saved context.
Diffstat (limited to 'linuxthreads/ChangeLog')
-rw-r--r--linuxthreads/ChangeLog33
1 files changed, 33 insertions, 0 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index de4047c5ac..917ab715f1 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -1,3 +1,36 @@
+2001-04-10 Ulrich Drepper <drepper@redhat.com>
+
+ * join.c (pthread_exit): Move code to new function __pthread_do_exit
+ which takes an extra parameter with the current frame pointer.
+ Call new function with CURRENT_STACK_FRAME.
+ (__pthread_do_exit): New function. Call __pthread_perform_cleanup
+ with the new parameter.
+ (pthread_join): Call __pthread_do_exit instead of pthread_exit.
+ * cancel.c (__pthread_perform_cleanup): Takes extra parameter. Use
+ this parameter as the initial value the cleanup handler records are
+ compared against. No active cleanup handler record must have an
+ address lower than the previous one and the initial record must be
+ above (below on PA) the frame address passed in.
+ (pthread_setcancelstate): Call __pthread_do_exit instead of
+ pthread_exit.
+ (pthread_setcanceltype): Likewise.
+ (pthread_testcancel): Likewise.
+ (_pthread_cleanup_pop_restore): Likewise.
+ * condvar.c (pthread_cond_wait): Likewise.
+ (pthread_cond_timedwait_relative): Likewise.
+ * manager.c (pthread_start_thread): Likewise.
+ * oldsemaphore.c (__old_sem_wait): Likewise.
+ * pthread.c (pthread_handle_sigcancel): Likewise.
+ * semaphore.c (__new_sem_wait): Likewise.
+ (sem_timedwait): Likewise.
+ * ptlongjmp.c (pthread_cleanup_upto): Also use current stack frame
+ to limit the cleanup handlers which get run.
+ * internals.h: Add prototype for __pthread_do_exit. Adjust prototype
+ for __pthread_perform_cleanup.
+
+ * Makefile (tests): Add tst-cancel.
+ * tst-cancel.c: New file.
+
2001-04-08 Hans-Peter Nilsson <hp@axis.com>
* sysdeps/cris/pt-machine.h: New file.