56 lines
1.9 KiB
Diff
56 lines
1.9 KiB
Diff
|
|
From fa282d002c45e1cc1cca6a2541b75ab5889c8c01 Mon Sep 17 00:00:00 2001
|
||
|
|
From: Arman Nabiev <nabiev.arman13@gmail.com>
|
||
|
|
Date: Thu, 22 Aug 2024 19:56:53 +0300
|
||
|
|
Subject: [PATCH] target/ppc: Fix migration of CPUs with TLB_EMB TLB type
|
||
|
|
|
||
|
|
In vmstate_tlbemb a cut-and-paste error meant we gave
|
||
|
|
this vmstate subsection the same "cpu/tlb6xx" name as
|
||
|
|
the vmstate_tlb6xx subsection. This breaks migration load
|
||
|
|
for any CPU using the TLB_EMB CPU type, because when we
|
||
|
|
see the "tlb6xx" name in the incoming data we try to
|
||
|
|
interpret it as a vmstate_tlb6xx subsection, which it
|
||
|
|
isn't the right format for:
|
||
|
|
|
||
|
|
$ qemu-system-ppc -drive
|
||
|
|
if=none,format=qcow2,file=/home/petmay01/test-images/virt/dummy.qcow2
|
||
|
|
-monitor stdio -M bamboo
|
||
|
|
QEMU 9.0.92 monitor - type 'help' for more information
|
||
|
|
(qemu) savevm foo
|
||
|
|
(qemu) loadvm foo
|
||
|
|
Missing section footer for cpu
|
||
|
|
Error: Error -22 while loading VM state
|
||
|
|
|
||
|
|
Correct the incorrect vmstate section name. Since migration
|
||
|
|
for these CPU types was completely broken before, we don't
|
||
|
|
need to care that this is a migration compatibility break.
|
||
|
|
|
||
|
|
This affects the PPC 405, 440, 460 and e200 CPU families.
|
||
|
|
|
||
|
|
Cc: qemu-stable@nongnu.org
|
||
|
|
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2522
|
||
|
|
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
|
||
|
|
Signed-off-by: Arman Nabiev <nabiev.arman13@gmail.com>
|
||
|
|
Signed-off-by: Fabiano Rosas <farosas@suse.de>
|
||
|
|
(cherry picked from commit 203beb6f047467a4abfc8267c234393cea3f471c)
|
||
|
|
Signed-off-by: zhujun2 <zhujun2_yewu@cmss.chinamobile.com>
|
||
|
|
---
|
||
|
|
target/ppc/machine.c | 2 +-
|
||
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
|
||
|
|
diff --git a/target/ppc/machine.c b/target/ppc/machine.c
|
||
|
|
index 68cbdffecd..3e010f3a07 100644
|
||
|
|
--- a/target/ppc/machine.c
|
||
|
|
+++ b/target/ppc/machine.c
|
||
|
|
@@ -621,7 +621,7 @@ static bool tlbemb_needed(void *opaque)
|
||
|
|
}
|
||
|
|
|
||
|
|
static const VMStateDescription vmstate_tlbemb = {
|
||
|
|
- .name = "cpu/tlb6xx",
|
||
|
|
+ .name = "cpu/tlbemb",
|
||
|
|
.version_id = 1,
|
||
|
|
.minimum_version_id = 1,
|
||
|
|
.needed = tlbemb_needed,
|
||
|
|
--
|
||
|
|
2.41.0.windows.1
|
||
|
|
|