[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [PULL 16/17] spapr: don't migrate "spapr_option_vector_ov5_ca
From: |
David Gibson |
Subject: |
[Qemu-ppc] [PULL 16/17] spapr: don't migrate "spapr_option_vector_ov5_cas" to pre 2.8 machines |
Date: |
Fri, 4 May 2018 15:59:29 +1000 |
From: Greg Kurz <address@hidden>
a324d6f16697 "spapr: Support ibm,dynamic-memory-v2 property" added
a new feature in the set of CAS-negotiatable options. This causes
the CAS-negotiated options subsection to be migrated, even for old
machine types that don't know about it, and breaks backward migration
to QEMU 2.7 and older versions:
qemu-system-ppc64: error while loading state for instance 0x0 of device
'spapr'
qemu-system-ppc64: load of migration failed: No such file or directory
Since this feature only affects boot time behaviour, it should be
filtered out when we decide to migrate CAS-negotiated options, like
we already do with OV5_FORM1_AFFINITY and OV5_DRCONF_MEMORY.
Signed-off-by: Greg Kurz <address@hidden>
Signed-off-by: David Gibson <address@hidden>
---
hw/ppc/spapr.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index 535d8276df..19997f66c0 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -1849,10 +1849,12 @@ static bool spapr_ov5_cas_needed(void *opaque)
*
* Thus, for any cases where the set of available CAS-negotiatable
* options extends beyond OV5_FORM1_AFFINITY and OV5_DRCONF_MEMORY, we
- * include the CAS-negotiated options in the migration stream.
+ * include the CAS-negotiated options in the migration stream, unless
+ * if they affect boot time behaviour only.
*/
spapr_ovec_set(ov5_mask, OV5_FORM1_AFFINITY);
spapr_ovec_set(ov5_mask, OV5_DRCONF_MEMORY);
+ spapr_ovec_set(ov5_mask, OV5_DRMEM_V2);
/* spapr_ovec_diff returns true if bits were removed. we avoid using
* the mask itself since in the future it's possible "legacy" bits may be
--
2.17.0
- [Qemu-ppc] [PULL 00/17] ppc-for-2.13 queue 20180504, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 01/17] target/ppc: return a nil HPT base address on sPAPR machines, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 02/17] target/ppc: add basic support for PTCR on POWER9, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 03/17] spapr: Remove support for explicitly allocated RMAs, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 05/17] spapr: Clean up rtas_start_cpu() & rtas_stop_self(), David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 07/17] spapr: Make a helper to set up cpu entry point state, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 11/17] spapr: Clean up handling of LPCR power-saving exit bits, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 15/17] target/ppc: always set PPC_MEM_TLBIE in pre 2.8 migration hack, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 16/17] spapr: don't migrate "spapr_option_vector_ov5_cas" to pre 2.8 machines,
David Gibson <=
- [Qemu-ppc] [PULL 04/17] target/ppc: Add ppc_store_lpcr() helper, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 17/17] spapr: don't advertise radix GTSE if max-compat-cpu < power9, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 14/17] mac_newworld: move wiring of macio IRQs to macio_newworld_realize(), David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 10/17] spapr: Move PAPR mode cpu setup fully to spapr code, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 12/17] uninorth: create new uninorth device, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 09/17] target/ppc: Delay initialization of LPCR_UPRT for secondary cpus, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 06/17] spapr: Remove unhelpful helpers from rtas_start_cpu(), David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 13/17] mac_newworld: remove pics IRQ array and wire up macio to OpenPIC directly, David Gibson, 2018/05/04
- [Qemu-ppc] [PULL 08/17] spapr: Clean up LPCR updates from hypercalls, David Gibson, 2018/05/04
- Re: [Qemu-ppc] [PULL 00/17] ppc-for-2.13 queue 20180504, Peter Maydell, 2018/05/04