qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH V3 00/10] fix migration of suspended runstate
@ 2023-08-14 18:54 Steve Sistare
  2023-08-14 18:54 ` [PATCH V3 01/10] vl: start on wakeup request Steve Sistare
                   ` (10 more replies)
  0 siblings, 11 replies; 18+ messages in thread
From: Steve Sistare @ 2023-08-14 18:54 UTC (permalink / raw)
  To: qemu-devel
  Cc: Juan Quintela, Peter Xu, Paolo Bonzini, Thomas Huth,
	Daniel P. Berrangé, Steve Sistare

Migration of a guest in the suspended runstate is broken.  The incoming
migration code automatically tries to wake the guest, which is wrong;
the guest should end migration in the same runstate it started.  Further,
for a restored snapshot, the automatic wakeup fails.  The runstate is
RUNNING, but the guest is not.  See the commit messages for the details.

Changes in V2:
  * simplify "start on wakeup request"
  * fix postcopy, snapshot, and background migration
  * refactor fixes for each type of migration
  * explicitly handled suspended events and runstate in tests
  * add test for postcopy and background migration

Changes in V3:
  * rebase to tip
  * fix hang in new function migrate_wait_for_dirty_mem

Steve Sistare (10):
  vl: start on wakeup request
  migration: preserve suspended runstate
  migration: add runstate function
  migration: preserve suspended for snapshot
  migration: preserve suspended for bg_migration
  tests/qtest: migration events
  tests/qtest: option to suspend during migration
  tests/qtest: precopy migration with suspend
  tests/qtest: postcopy migration with suspend
  tests/qtest: background migration with suspend

 include/sysemu/runstate.h            |   1 +
 migration/migration.c                |  28 ++++--
 migration/migration.h                |   1 +
 migration/savevm.c                   |   9 +-
 softmmu/cpus.c                       |  12 +++
 softmmu/runstate.c                   |   5 +-
 tests/migration/i386/Makefile        |   5 +-
 tests/migration/i386/a-b-bootblock.S |  51 +++++++++-
 tests/migration/i386/a-b-bootblock.h |  22 +++--
 tests/qtest/migration-helpers.c      |  27 ++----
 tests/qtest/migration-helpers.h      |   9 +-
 tests/qtest/migration-test.c         | 177 +++++++++++++++++++++++++++--------
 12 files changed, 258 insertions(+), 89 deletions(-)

-- 
1.8.3.1



^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2023-08-25 17:56 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-14 18:54 [PATCH V3 00/10] fix migration of suspended runstate Steve Sistare
2023-08-14 18:54 ` [PATCH V3 01/10] vl: start on wakeup request Steve Sistare
2023-08-17 18:27   ` Peter Xu
2023-08-24 20:54     ` Steven Sistare
2023-08-14 18:54 ` [PATCH V3 02/10] migration: preserve suspended runstate Steve Sistare
2023-08-14 18:54 ` [PATCH V3 03/10] migration: add runstate function Steve Sistare
2023-08-14 18:54 ` [PATCH V3 04/10] migration: preserve suspended for snapshot Steve Sistare
2023-08-14 18:54 ` [PATCH V3 05/10] migration: preserve suspended for bg_migration Steve Sistare
2023-08-14 18:54 ` [PATCH V3 06/10] tests/qtest: migration events Steve Sistare
2023-08-14 18:54 ` [PATCH V3 07/10] tests/qtest: option to suspend during migration Steve Sistare
2023-08-14 18:54 ` [PATCH V3 08/10] tests/qtest: precopy migration with suspend Steve Sistare
2023-08-14 18:54 ` [PATCH V3 09/10] tests/qtest: postcopy " Steve Sistare
2023-08-14 18:54 ` [PATCH V3 10/10] tests/qtest: background " Steve Sistare
2023-08-17 18:23 ` [PATCH V3 00/10] fix migration of suspended runstate Peter Xu
2023-08-24 21:09   ` Steven Sistare
2023-08-25 13:28     ` Steven Sistare
2023-08-25 15:07       ` Peter Xu
2023-08-25 17:56         ` Steven Sistare

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).