This is my latest draft of a PAPR extension allowing a guest's Hash Page Table (HPT) to be resized at runtime (to better respond to memory hotplug events).
This series contains the qemu portions of the implementation: a full implementation for TCG and KVM PR guests, and hooks to enable and advertise the KVM HV implementation when available. To use this requires a guest which is aware of HPT resizing, and, if using KVM HV, a host KVM which implements it as well. The latest guest and host kernel implementations can be found here: https://lists.ozlabs.org/pipermail/linuxppc-dev/2016-March/140896.html David Gibson (6): pseries: Stubs for HPT resizing pseries: Implement HPT resizing pseries: Enable HPT resizing for 2.6 pseries: Use smaller default hash page tables when guest can resize pseries: Allow HPT resizing on PR KVM pseries: Allow KVM HV implementation of HPT resizing to be used hw/ppc/spapr.c | 84 +++++++++- hw/ppc/spapr_hcall.c | 405 +++++++++++++++++++++++++++++++++++++++++++++- include/hw/ppc/spapr.h | 21 ++- linux-headers/linux/kvm.h | 1 + target-ppc/kvm.c | 54 +++++++ target-ppc/kvm_ppc.h | 6 + target-ppc/mmu-hash64.h | 4 + trace-events | 2 + 8 files changed, 567 insertions(+), 10 deletions(-) -- 2.5.0