about summary refs log tree commit diff
path: root/nptl/ChangeLog
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2009-05-15 10:12:35 -0700
committerPetr Baudis <pasky@suse.cz>2009-05-22 04:45:00 +0200
commitf84a1e419017b86b4745ae983854b3d57e8c55f1 (patch)
treeb6e56b624cb1e69a40bbc0839cf2f658962f7a53 /nptl/ChangeLog
parent85734801890201249fcf5270ca50ae0dbac77c94 (diff)
downloadglibc-f84a1e419017b86b4745ae983854b3d57e8c55f1.tar.gz
glibc-f84a1e419017b86b4745ae983854b3d57e8c55f1.tar.xz
glibc-f84a1e419017b86b4745ae983854b3d57e8c55f1.zip
No cancel signal in unsafe places.
When disabling async cancellation we cannot return from the function
call if the thread is canceled.  This happens when the cancel bits
have been set before async cancel is disabled but the signal hasn't
been sent/received yet.  Delay for as long as necessary since
otherwise the signal might be received in an unsafe context.
(cherry picked from commit 1a7f254b4b0590bfab1baa1400705265b1b23b97)
Diffstat (limited to 'nptl/ChangeLog')
-rw-r--r--nptl/ChangeLog6
1 files changed, 6 insertions, 0 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index b83dfd0c9d..74a2a73666 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,9 @@
+2009-05-15  Ulrich Drepper  <drepper@redhat.com>
+
+	* cancellation.c (__pthread_disable_asynccancel): Don't return if
+	thread is canceled.
+	* libc-cancellation.c (__libc_disable_asynccancel): Likewise.
+
 2009-04-27  Ulrich Drepper  <drepper@redhat.com>
 
 	* cancellation.c (__pthread_disable_asynccancel): Use THREAD_ATOMIC_AND