qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 0/6] spapr/xics: fix migration of older machine type


From: Greg Kurz
Subject: [Qemu-devel] [PATCH 0/6] spapr/xics: fix migration of older machine types
Date: Mon, 15 May 2017 13:38:58 +0200
User-agent: StGit/0.17.1-20-gc0b1b-dirty

Recent work on XICS broke migration of older machine types. The target
fails with:

qemu-system-ppc64: Unknown savevm section or instance 'icp/server' 1
qemu-system-ppc64: load of migration failed: Invalid argument

This happens because the current code no longer pre-allocates ICP objects
at machine init time.

This series restore the previous behavior for older machine types (patch 6).
Since the fix adds an error path to cover the case when realization of the
ICP objects fails, the series first does some cleanup on the way errors are
handled (patch 1-5).

I could successfully migrate older machines back and forth with QEMU 2.9:
- pseries-2.9
- pseries-2.9 with hotplugged CPUs
- pseries-2.6 (pre CPU hotplug support)

This series is based on:

https://github.com/dgibson/qemu.git ppc-for-2.10

--
Greg

---

Greg Kurz (6):
      ppc/xics: simplify prototype of xics_spapr_init()
      spapr: fix error path of required kernel-irqchip
      spapr: fix error reporting in xics_system_init()
      spapr: sanitize error handling in spapr_ics_create()
      spapr-cpu-core: release ICP object when realization fails
      spapr: fix migration of ICP objects from/to older QEMU


 hw/intc/xics_spapr.c    |    3 +-
 hw/ppc/spapr.c          |   75 ++++++++++++++++++++++++++++++++++++++---------
 hw/ppc/spapr_cpu_core.c |   40 ++++++++++++++++---------
 include/hw/ppc/spapr.h  |    2 +
 include/hw/ppc/xics.h   |    2 +
 5 files changed, 90 insertions(+), 32 deletions(-)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]