[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 1/1] qmp: process system-reset event in paused s
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH 1/1] qmp: process system-reset event in paused state |
Date: |
Mon, 11 Jan 2016 12:29:34 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0 |
On 11/01/2016 11:31, Denis V. Lunev wrote:
>>>
>>> IMO, after a reset, main_loop_should_exit should actually transition
>>> to VM_STATE_PRELAUNCH (*not* RUN_STATE_PAUSED) for *all* states except
>>> RUN_STATE_INMIGRATE, RUN_STATE_SAVE_VM (which I think cannot happen
>>> there) and (of course) RUN_STATE_RUNNING. Some changes will be required
>>> to the transition table as well.
>>>
>>> This will fix similar bugs for other runstates as well, though most of
>>> them probably cannot be triggered from libvirt.
>>
>> ok. Thank you for this input. I'll analyse this and come with
>> corrected patch :)
>
> What would be correct procedure to handle this state?
>
> Setting VM_STATE_PRELAUNCH in main_loop_should_exit does not
> move QEMU into VM_STATE_RUNNING and thus subsequent 'resume'
> command is necessary.
>
> In this case the processing of 'reset' command should be different
> in libvirt, i.e. libvirt should send two commands ('reset' and 'resume')
> in this state.
Either that, or libvirt's client should send two of them.
As far as QEMU is concerned, a paused VM remains paused after a reset,
no matter why it was reset. I'm not sure what are the desired semantics
for libvirt.
Paolo