qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH V2] Use clean shutdown request for ctrl-a x


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH V2] Use clean shutdown request for ctrl-a x
Date: Mon, 09 Jul 2012 12:20:32 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20120605 Thunderbird/13.0

Il 09/07/2012 12:19, Fabien Chouteau ha scritto:
> Any comment?

Looks good to me.  Blue, can you apply it while Anthony is on holiday?

Paolo

> On 07/04/2012 01:04 PM, Fabien Chouteau wrote:
>> The goal is to make ctrl-a x to close Qemu in a clean way. The current
>> exit(0) skips a lot of cleanup/close functions, for example in block
>> drivers.
>>
>> Signed-off-by: Fabien Chouteau <address@hidden>
>> ---
>>  qemu-char.c |    2 +-
>>  sysemu.h    |    1 +
>>  vl.c        |    5 +++++
>>  3 files changed, 7 insertions(+), 1 deletion(-)
>>
>> diff --git a/qemu-char.c b/qemu-char.c
>> index c2aaaee..7732846 100644
>> --- a/qemu-char.c
>> +++ b/qemu-char.c
>> @@ -353,7 +353,7 @@ static int mux_proc_byte(CharDriverState *chr, MuxDriver 
>> *d, int ch)
>>              {
>>                   const char *term =  "QEMU: Terminated\n\r";
>>                   chr->chr_write(chr,(uint8_t *)term,strlen(term));
>> -                 exit(0);
>> +                 qemu_system_force_shutdown();
>>                   break;
>>              }
>>          case 's':
>> diff --git a/sysemu.h b/sysemu.h
>> index bc2c788..2b2c354 100644
>> --- a/sysemu.h
>> +++ b/sysemu.h
>> @@ -50,6 +50,7 @@ void qemu_register_suspend_notifier(Notifier *notifier);
>>  void qemu_system_wakeup_request(WakeupReason reason);
>>  void qemu_system_wakeup_enable(WakeupReason reason, bool enabled);
>>  void qemu_register_wakeup_notifier(Notifier *notifier);
>> +void qemu_system_force_shutdown(void);
>>  void qemu_system_shutdown_request(void);
>>  void qemu_system_powerdown_request(void);
>>  void qemu_system_debug_request(void);
>> diff --git a/vl.c b/vl.c
>> index 1329c30..bd27583 100644
>> --- a/vl.c
>> +++ b/vl.c
>> @@ -1477,6 +1477,11 @@ void qemu_system_killed(int signal, pid_t pid)
>>  {
>>      shutdown_signal = signal;
>>      shutdown_pid = pid;
>> +    qemu_system_force_shutdown();
>> +}
>> +
>> +void qemu_system_force_shutdown(void)
>> +{
>>      no_shutdown = 0;
>>      qemu_system_shutdown_request();
>>  }
>>
> 
> 





reply via email to

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