From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55108) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZCnB1-00062c-Rn for qemu-devel@nongnu.org; Wed, 08 Jul 2015 07:06:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZCnAx-0003h7-TW for qemu-devel@nongnu.org; Wed, 08 Jul 2015 07:06:07 -0400 Received: from mx1.redhat.com ([209.132.183.28]:60597) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZCnAx-0003gd-O3 for qemu-devel@nongnu.org; Wed, 08 Jul 2015 07:06:03 -0400 From: Juan Quintela In-Reply-To: <559CF016.4040101@huawei.com> (zhanghailiang's message of "Wed, 8 Jul 2015 17:40:38 +0800") References: <1436274549-28826-1-git-send-email-quintela@redhat.com> <1436274549-28826-15-git-send-email-quintela@redhat.com> <559CF016.4040101@huawei.com> Date: Wed, 08 Jul 2015 13:06:01 +0200 Message-ID: <87io9uoqna.fsf@neno.neno> MIME-Version: 1.0 Content-Type: text/plain Subject: Re: [Qemu-devel] [PULL 14/28] runstate: migration allows more transitions now Reply-To: quintela@redhat.com List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: zhanghailiang Cc: amit.shah@redhat.com, qemu-devel@nongnu.org, peter.huangpeng@huawei.com zhanghailiang 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? 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 >> Reviewed-by: Dr. David Alan Gilbert >> --- >> 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 }, >>