From: Michael Galaxy <mgalaxy(a)akamai.com>
CPR-based support for whole-hypervisor kexec-based live updates is
making progress on qemu-devel. In support of this, we need NUMA to be
support in these kinds of environments. To do this we use a technology
called PMEM (persistent memory), which underpin the ability for
CPR Live Updates to work so that QEMU memory can remain in RAM and
be recovered after the kexec has completed.
Our systems are highly NUMA-aware, and so this patch series enables
NUMA awareness for live update and also allows live migrations to work.
Further, we make a small change that allows live migrations to work
between *non* PMEM-based systems and PMEM-based systems (and
vice-versa). This allows for seemless upgrades from non-live-compatible
systems to live-update-compatible sytems without any downtime.
Michael Galaxy (5):
qemu.conf changes to support multiple memory backend directories
Update cleanup routines to handle multiple memory backing paths
instead of just one.
Implement multiple memory backing paths
Support live migration between file-backed memory and anonymous
memory.
Update unit test to support multiple memory backends
src/qemu/qemu_command.c | 8 ++-
src/qemu/qemu_conf.c | 140 ++++++++++++++++++++++++++++++++++++----
src/qemu/qemu_conf.h | 14 ++--
src/qemu/qemu_domain.c | 24 +++++--
src/qemu/qemu_driver.c | 31 +++++----
src/qemu/qemu_hotplug.c | 6 +-
src/qemu/qemu_process.c | 45 +++++++------
src/qemu/qemu_process.h | 13 ++--
tests/testutilsqemu.c | 5 +-
9 files changed, 217 insertions(+), 69 deletions(-)
--
2.25.1