From: Michael Galaxy <mgalaxy@xxxxxxxxxx> CPR-based support for whole-hypervisor kexec-based live updates is now finally merged into QEMU. In support of this, we need NUMA to be supported in these kinds of environments. To do this we use a technology called PMEM (persistent memory) in Linux, which underpins the ability for CPR Live Updates to work so that QEMU memory can remain in RAM and be recovered after a kexec operationg has completed. Our systems are highly NUMA-aware, and so this patch series enables NUMA awareness for live updates. 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. Changes since v2: 1. Corrected invalid privateData casts and re-organized variables and error codes. 2. Re-ran ninja test and corrected formatting 3. Tested that individual patches apply and build cleanly. 4. Separated out NEWS item into separate patch Michael Galaxy (4): qemu.conf changes to support multiple memory backend Support live migration between file-backed memory and anonymous memory. Update configuration file documentation to support multiple memory backends Add NEWS item for multiple memory backend support NEWS.rst | 8 +++ docs/kbase/virtiofs.rst | 2 + src/qemu/qemu.conf.in | 4 ++ src/qemu/qemu_command.c | 6 +- src/qemu/qemu_conf.c | 139 +++++++++++++++++++++++++++++++++++----- src/qemu/qemu_conf.h | 16 +++-- src/qemu/qemu_domain.c | 24 +++++-- src/qemu/qemu_driver.c | 37 +++++++---- src/qemu/qemu_hotplug.c | 6 +- src/qemu/qemu_process.c | 42 ++++++------ src/qemu/qemu_process.h | 6 +- tests/testutilsqemu.c | 5 +- 12 files changed, 224 insertions(+), 71 deletions(-) -- 2.34.1