From: Fabiano Rosas <farosas@suse.de>
To: qemu-devel@nongnu.org
Cc: Nicholas Piggin <npiggin@gmail.com>,
Thomas Huth <thuth@redhat.com>, Fabian Vogt <fvogt@suse.de>,
Peter Xu <peterx@redhat.com>
Subject: [PATCH 0/4] ppc: Fix migration issues with XICS and quiesce
Date: Tue, 19 Aug 2025 19:39:01 -0300 [thread overview]
Message-ID: <20250819223905.2247-1-farosas@suse.de> (raw)
Fabian reports two issues with migration on ppc64le, one of which with
a proposed fix, which I include in this series.
1) XICS migration causes a guest hang after migration due to missing
ICP server state. Fix is to bring back the vmstate_register call
for that device. Breaks backward migration, but it was already
non-functional anyway.
2) pseries migration causes a guest hang after migration due to a new
variable used to track the stopped state of vcpus, which is not
migrated. Fix is to migrate the new variable. To avoid breaking
backward migration, a compat property is added. Breaks forward
migration, a workaround is proposed.
I also added some functional tests changes because there are currently
no test that can detect the kind of hangs seen here. RFC on those,
feel free to nitpick.
Thanks
CI run: https://gitlab.com/farosas/qemu/-/pipelines/1992482993
Fabian Vogt (1):
hw/intc/xics: Add missing call to register vmstate_icp_server
Fabiano Rosas (3):
tests/functional: Extract migration code into a new class
tests/functional: Add a OS level migration test for pseries
target/ppc: Fix env->quiesced migration
hw/core/machine.c | 1 +
hw/intc/xics.c | 2 ++
target/ppc/cpu.h | 1 +
target/ppc/cpu_init.c | 7 +++++
target/ppc/machine.c | 40 ++++++++++++++++++++++++
tests/functional/qemu_test/migration.py | 40 ++++++++++++++++++++++++
tests/functional/test_migration.py | 24 ++-------------
tests/functional/test_ppc64_pseries.py | 41 +++++++++++++++++++++++++
8 files changed, 135 insertions(+), 21 deletions(-)
create mode 100644 tests/functional/qemu_test/migration.py
--
2.35.3
next reply other threads:[~2025-08-19 22:39 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-19 22:39 Fabiano Rosas [this message]
2025-08-19 22:39 ` [PATCH 1/4] hw/intc/xics: Add missing call to register vmstate_icp_server Fabiano Rosas
2025-09-18 15:28 ` Gautam Menghani
2025-08-19 22:39 ` [RFC PATCH 2/4] tests/functional: Extract migration code into a new class Fabiano Rosas
2025-08-20 6:50 ` Thomas Huth
2025-08-19 22:39 ` [RFC PATCH 3/4] tests/functional: Add a OS level migration test for pseries Fabiano Rosas
2025-08-20 7:03 ` Thomas Huth
2025-08-20 15:08 ` Fabiano Rosas
2025-08-19 22:39 ` [PATCH 4/4] target/ppc: Fix env->quiesced migration Fabiano Rosas
2025-08-20 6:55 ` Thomas Huth
2025-08-20 15:07 ` Fabiano Rosas
2025-08-20 15:20 ` Thomas Huth
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250819223905.2247-1-farosas@suse.de \
--to=farosas@suse.de \
--cc=fvogt@suse.de \
--cc=npiggin@gmail.com \
--cc=peterx@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).