From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55817) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ahrey-0006tQ-33 for qemu-devel@nongnu.org; Mon, 21 Mar 2016 00:41:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ahrex-0007Kx-5H for qemu-devel@nongnu.org; Mon, 21 Mar 2016 00:41:44 -0400 From: David Gibson Date: Mon, 21 Mar 2016 15:42:46 +1100 Message-Id: <1458535372-6757-1-git-send-email-david@gibson.dropbear.id.au> Subject: [Qemu-devel] [RFC 0/6] PAPR HPT resizing (qemu host side) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: paulus@samba.org, aik@ozlabs.ru Cc: agraf@suse.de, David Gibson , qemu-ppc@nongnu.org, qemu-devel@nongnu.org, bharata@linux.vnet.ibm.com 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