diff options
author | Ulrich Drepper <drepper@redhat.com> | 2009-05-15 20:42:36 -0700 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2009-05-15 20:42:36 -0700 |
commit | 9437b427cec6266abd303983848549a5c4ba0d0a (patch) | |
tree | 7d3c7df6abb9a33d4f35a3dc20baa59ff1a53ea1 /nptl/ChangeLog | |
parent | bbc5d74dd0bd1c3dbe7ea8515f081dc7e318272c (diff) | |
download | glibc-9437b427cec6266abd303983848549a5c4ba0d0a.tar glibc-9437b427cec6266abd303983848549a5c4ba0d0a.tar.gz glibc-9437b427cec6266abd303983848549a5c4ba0d0a.tar.bz2 glibc-9437b427cec6266abd303983848549a5c4ba0d0a.zip |
Fix change to prevent cancel signal in unsafe places.
The bits tested to decide when to delay the return when switching
off async cancel mode were wrong. Fix that. Also close a race
condition in pthread_cancel where the bit indicating the cancellation
is unconditionally set even if the cancel type might have changed.
Diffstat (limited to 'nptl/ChangeLog')
-rw-r--r-- | nptl/ChangeLog | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 74a2a73666..f3bd32f577 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,5 +1,11 @@ 2009-05-15 Ulrich Drepper <drepper@redhat.com> + * cancellation.c (__pthread_disable_asynccancel): Correct the bits + to test when deciding on the delay. + * libc-cancellation.c (__libc_disable_asynccancel): Likewise. + * pthread_cancel.c: Close race between deciding on sending a signal + and setting the CANCELING_BIT bit. + * cancellation.c (__pthread_disable_asynccancel): Don't return if thread is canceled. * libc-cancellation.c (__libc_disable_asynccancel): Likewise. |