No cancel signal in unsafe places.
commitf84a1e419017b86b4745ae983854b3d57e8c55f1
authorUlrich Drepper <drepper@redhat.com>
Fri, 15 May 2009 17:12:35 +0000 (15 10:12 -0700)
committerPetr Baudis <pasky@suse.cz>
Fri, 22 May 2009 02:45:00 +0000 (22 04:45 +0200)
treeb6e56b624cb1e69a40bbc0839cf2f658962f7a53
parent85734801890201249fcf5270ca50ae0dbac77c94
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)
nptl/ChangeLog
nptl/cancellation.c
nptl/libc-cancellation.c