Am 10.05.2012 09:29, schrieb Paolo Bonzini: > Il 09/05/2012 19:23, Jan Kiszka ha scritto: >> Use pthread_kill instead of process-wide kill to invoke the signal >> handler used for stack switching. This may fix spurious lock-ups with >> this backend, easily triggerable by extending the time window between >> kill and sigsuspend. >> >> Signed-off-by: Jan Kiszka <jan.kis...@siemens.com> >> --- >> coroutine-sigaltstack.c | 2 +- >> 1 files changed, 1 insertions(+), 1 deletions(-) >> >> diff --git a/coroutine-sigaltstack.c b/coroutine-sigaltstack.c >> index 7ff2d33..b2e316c 100644 >> --- a/coroutine-sigaltstack.c >> +++ b/coroutine-sigaltstack.c >> @@ -226,7 +226,7 @@ static Coroutine *coroutine_new(void) >> * called. >> */ >> coTS->tr_called = 0; >> - kill(getpid(), SIGUSR2); >> + pthread_kill(pthread_self(), SIGUSR2); >> sigfillset(&sigs); >> sigdelset(&sigs, SIGUSR2); >> while (!coTS->tr_called) { > > Reviewed-by: Paolo Bonzini <pbonz...@redhat.com>
Thanks, applied to the block branch for 1.1. Kevin