On 07/08/2015 07:06 PM, Juan Quintela wrote:
> zhanghailiang <zhang.zhanghaili...@huawei.com> wrote:
>> Hi,
>>
>> If testing migration with '-S' for qemu command line, (migrate
>> directly without executing 'cont' command),
>> qemu process in the destination will abort with the follow message:
>>
>> ERROR: invalid runstate transition: 'inmigrate' -> 'prelaunch'
>> Aborted
>>
>> After the follow modification, it will be OK. Is this need to be fix ?
> 
> but this is a "werid" case. basically it means that
> 
> - we start on host A
> - we start on host B (with -S)
> - we migrate from A to B
> - now we migrate from B to C without running at all on B
> 
> Or I am missing something?

What about this bug? Should we fix it in qemu-2.4?

Thanks
Wen Congyang

> 
> Later, Juan.
> 
> 
>>
>> --- a/vl.c
>> +++ b/vl.c
>> @@ -583,6 +583,7 @@ static const RunStateTransition 
>> runstate_transitions_def[] = {
>>      { RUN_STATE_INMIGRATE, RUN_STATE_WATCHDOG },
>>      { RUN_STATE_INMIGRATE, RUN_STATE_GUEST_PANICKED },
>> +    { RUN_STATE_INMIGRATE, RUN_STATE_PRELAUNCH },
>>
>>      { RUN_STATE_INTERNAL_ERROR, RUN_STATE_PAUSED },
>>      { RUN_STATE_INTERNAL_ERROR, RUN_STATE_FINISH_MIGRATE },
>>
>>
>> Thanks,
>> zhanghailiang
>>
>> On 2015/7/7 21:08, Juan Quintela wrote:
>>> Next commit would allow to move from incoming migration to error happening 
>>> on source.
>>>
>>> Should we add more states to this transition?  Luiz?
>>>
>>> Signed-off-by: Juan Quintela <quint...@redhat.com>
>>> Reviewed-by: Dr. David Alan Gilbert <dgilb...@redhat.com>
>>> ---
>>>   vl.c | 8 +++++++-
>>>   1 file changed, 7 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/vl.c b/vl.c
>>> index fec7e93..19a8737 100644
>>> --- a/vl.c
>>> +++ b/vl.c
>>> @@ -573,8 +573,14 @@ static const RunStateTransition 
>>> runstate_transitions_def[] = {
>>>       { RUN_STATE_DEBUG, RUN_STATE_RUNNING },
>>>       { RUN_STATE_DEBUG, RUN_STATE_FINISH_MIGRATE },
>>>
>>> -    { RUN_STATE_INMIGRATE, RUN_STATE_RUNNING },
>>> +    { RUN_STATE_INMIGRATE, RUN_STATE_INTERNAL_ERROR },
>>> +    { RUN_STATE_INMIGRATE, RUN_STATE_IO_ERROR },
>>>       { RUN_STATE_INMIGRATE, RUN_STATE_PAUSED },
>>> +    { RUN_STATE_INMIGRATE, RUN_STATE_RUNNING },
>>> +    { RUN_STATE_INMIGRATE, RUN_STATE_SHUTDOWN },
>>> +    { RUN_STATE_INMIGRATE, RUN_STATE_SUSPENDED },
>>> +    { RUN_STATE_INMIGRATE, RUN_STATE_WATCHDOG },
>>> +    { RUN_STATE_INMIGRATE, RUN_STATE_GUEST_PANICKED },
>>>
>>>       { RUN_STATE_INTERNAL_ERROR, RUN_STATE_PAUSED },
>>>       { RUN_STATE_INTERNAL_ERROR, RUN_STATE_FINISH_MIGRATE },
>>>
> 
> .
> 


Reply via email to