qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH 0/3] migration: Fix aarch64 cpregs migration
@ 2025-07-30 20:52 Fabiano Rosas
  2025-07-30 20:52 ` [RFC PATCH 1/3] target/arm: Fix migration to QEMU 10.1 Fabiano Rosas
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Fabiano Rosas @ 2025-07-30 20:52 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Xu, Peter Maydell

Commit 655659a74a ("target/arm: Correct encoding of Debug
Communications Channel registers") removed one register and added two
more. This breaks TCG migration:

1) to 10.1 - older versions will have one unknown register

  { .name = "DBGDTRTX", .state = ARM_CP_STATE_AA32,
    .cp = 14, .crn = 0, .crm = 5, .opc1 = 3, .opc2 = 0 }

  kvmid: 0x40200000200e0298

2) from 10.1 - older versions will not accept more registers than
   their cpreg_vmstate_array_len (292 > 291).

I'm proposing a (RFC) stop-gap fix for (1) so 10.1 can be used as a
migration target until we figure out how to add some form of
versioning of the cpregs_indexes list and keep track of what has been
added/removed throughout the releases.

Even with infrastructure in place to do compatibility of the cpregs
list, there is still the need to avoid (or justify) guest-visible
changes resulting from some registers not being migrated.

Anyway, let's discuss.

PS: the extra patches are to enable cross-version testing on aarch64,
which would have flagged this early. My apologies as this is entirely
my fault because enabling these tests for arm has been on my list for
a long time.

Fabiano Rosas (3):
  target/arm: Fix migration to QEMU 10.1
  tests/qtest/migration: Only test aarch64 on TCG
  tests/qtest/migration: Change cpu for aarch64

 target/arm/machine.c              | 24 +++++++++++++++++++++++-
 tests/qtest/migration/framework.c | 19 ++++++++++++++-----
 2 files changed, 37 insertions(+), 6 deletions(-)

-- 
2.35.3



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

end of thread, other threads:[~2025-07-31 16:23 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-30 20:52 [RFC PATCH 0/3] migration: Fix aarch64 cpregs migration Fabiano Rosas
2025-07-30 20:52 ` [RFC PATCH 1/3] target/arm: Fix migration to QEMU 10.1 Fabiano Rosas
2025-07-30 20:52 ` [RFC PATCH 2/3] tests/qtest/migration: Only test aarch64 on TCG Fabiano Rosas
2025-07-31 13:37   ` Peter Maydell
2025-07-31 14:58     ` Mohamed Mediouni
2025-07-30 20:52 ` [RFC PATCH 3/3] tests/qtest/migration: Change cpu for aarch64 Fabiano Rosas
2025-07-31 10:03   ` Jonathan Cameron via
2025-07-31 13:55     ` Fabiano Rosas

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).