[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 5/8] runstate/migrate: Two more transitions
From: |
Dr. David Alan Gilbert (git) |
Subject: |
[Qemu-devel] [PULL 5/8] runstate/migrate: Two more transitions |
Date: |
Wed, 6 Sep 2017 19:41:30 +0100 |
From: "Dr. David Alan Gilbert" <address@hidden>
There's a race if someone does a 'stop' near the end of migrate;
the migration process goes through two runstates:
'finish migrate'
'postmigrate'
If the user issues a 'stop' between the two we end up with invalid
state transitions.
Add the transitions as valid.
Signed-off-by: Dr. David Alan Gilbert <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Peter Xu <address@hidden>
Reviewed-by: Juan Quintela <address@hidden>
Signed-off-by: Dr. David Alan Gilbert <address@hidden>
---
vl.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/vl.c b/vl.c
index e75757f977..fb1f05b937 100644
--- a/vl.c
+++ b/vl.c
@@ -621,6 +621,7 @@ static const RunStateTransition runstate_transitions_def[]
= {
{ RUN_STATE_PAUSED, RUN_STATE_RUNNING },
{ RUN_STATE_PAUSED, RUN_STATE_FINISH_MIGRATE },
+ { RUN_STATE_PAUSED, RUN_STATE_POSTMIGRATE },
{ RUN_STATE_PAUSED, RUN_STATE_PRELAUNCH },
{ RUN_STATE_PAUSED, RUN_STATE_COLO},
@@ -633,6 +634,7 @@ static const RunStateTransition runstate_transitions_def[]
= {
{ RUN_STATE_PRELAUNCH, RUN_STATE_INMIGRATE },
{ RUN_STATE_FINISH_MIGRATE, RUN_STATE_RUNNING },
+ { RUN_STATE_FINISH_MIGRATE, RUN_STATE_PAUSED },
{ RUN_STATE_FINISH_MIGRATE, RUN_STATE_POSTMIGRATE },
{ RUN_STATE_FINISH_MIGRATE, RUN_STATE_PRELAUNCH },
{ RUN_STATE_FINISH_MIGRATE, RUN_STATE_COLO},
--
2.13.5
- [Qemu-devel] [PULL 0/8] migration queue, Dr. David Alan Gilbert (git), 2017/09/06
- [Qemu-devel] [PULL 1/8] migration: Report when bdrv_inactivate_all fails, Dr. David Alan Gilbert (git), 2017/09/06
- [Qemu-devel] [PULL 3/8] host-utils: Proactively fix pow2floor(), switch to unsigned, Dr. David Alan Gilbert (git), 2017/09/06
- [Qemu-devel] [PULL 4/8] host-utils: Simplify pow2ceil(), Dr. David Alan Gilbert (git), 2017/09/06
- [Qemu-devel] [PULL 2/8] xbzrle: Drop unused cache_resize(), Dr. David Alan Gilbert (git), 2017/09/06
- [Qemu-devel] [PULL 5/8] runstate/migrate: Two more transitions,
Dr. David Alan Gilbert (git) <=
- [Qemu-devel] [PULL 7/8] snapshot/tests: Try loadvm twice, Dr. David Alan Gilbert (git), 2017/09/06
- [Qemu-devel] [PULL 6/8] migration: Reset rather than destroy main_thread_load_event, Dr. David Alan Gilbert (git), 2017/09/06
- [Qemu-devel] [PULL 8/8] migration: dump str in migrate_set_state trace, Dr. David Alan Gilbert (git), 2017/09/06
- Re: [Qemu-devel] [PULL 0/8] migration queue, Peter Maydell, 2017/09/07