qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] Revert "main-loop.c: Handle SIGINT, SIGHUP and


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH] Revert "main-loop.c: Handle SIGINT, SIGHUP and SIGTERM, synchronously"
Date: Mon, 27 Oct 2014 15:39:45 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0


On 10/27/2014 03:18 PM, Peter Maydell wrote:
> On 26 October 2014 09:32, Jan Kiszka <address@hidden> wrote:
>> From: Jan Kiszka <address@hidden>
>>
>> This reverts commit 15124e142034d21341ec9f1a304a1dc5a6c25681. It breaks
>> debuggability of qemu.
>>
>> Signed-off-by: Jan Kiszka <address@hidden>
>> ---
>>
>> Feel free to apply this before or after "Make qemu_shutdown_requested
>> signal-safe".
>>
>>  main-loop.c | 3 ---
>>  1 file changed, 3 deletions(-)
>>
>> diff --git a/main-loop.c b/main-loop.c
>> index d2e64f1..53393a4 100644
>> --- a/main-loop.c
>> +++ b/main-loop.c
>> @@ -84,9 +84,6 @@ static int qemu_signal_init(void)
>>      sigaddset(&set, SIGIO);
>>      sigaddset(&set, SIGALRM);
>>      sigaddset(&set, SIGBUS);
>> -    sigaddset(&set, SIGINT);
>> -    sigaddset(&set, SIGHUP);
>> -    sigaddset(&set, SIGTERM);
> 
> I'm planning to apply this patch but with the following
> comment added here:
>     /* Note that the SIGINT, SIGTERM and SIGHUP signals are not handled
>      * via signalfd, and so their handlers will still be invoked
>      * asynchronously. This is done so that ^C can be used to interrupt
>      * QEMU when it is being run under gdb.
>      */

What about:

    /* SIGINT cannot be handled via signalfd, so that ^C can be used
     * to interrupt QEMU when it is being run under gdb.  SIGHUP and
     * SIGTERM are also handled asynchronously, even though it is not
     * strictly necessary, because they use the same handler as SIGINT.
     */

> (which does make the commit not a pure revert).
> 
>>      pthread_sigmask(SIG_BLOCK, &set, NULL);
>>
>>      sigdelset(&set, SIG_IPI);
>> --
>> 1.8.4.5
> 
> thanks
> -- PMM
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]