* Richard Weinberger via Libc-help: > But NPTL implements thread cancellation with signals, if I'm not > completely mistaken the cleanup routine will run in signal context > then. Deferred cancellation only occurs in signal context if the cancellation is acted upon from within a signal handler. For the signal handler case, whether cancellation handlers are restricted to async-signal-safe function calls depends on the type of signal (some are synchronous, not asynchronous) and what is interrupted by the signal (for asynchronous signals). Asynchronous cancellation has even more constraints than asynchronous signal safety, but it is rarely used.