All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCHv7 0/5] HPT resizing for pseries guests (qemu part)
@ 2017-07-12 13:11 David Gibson
  2017-07-12 13:11 ` [Qemu-devel] [PATCHv7 1/5] pseries: Stubs for HPT resizing David Gibson
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: David Gibson @ 2017-07-12 13:11 UTC (permalink / raw)
  To: mdroth, groug, bharata, benh, danielhb
  Cc: aik, lvivier, qemu-ppc, qemu-devel, David Gibson

This series implements the host side of the PAPR ACR to allow runtime
resizing of the Hashed Page Table (HPT) for pseries guests.
Exercising this feature requires a guest OS which is also aware of it.
Patches to implement the guest side in Linux are upstream as of v4.11.

Availability of the feature is controlled by a new 'resize-hpt'
machine option: it can be set to "disabled", "enabled" or "required".
The last means that qemu will refuse to boot a guest which is not
aware of the HPT resizing feature (it will instead quit during feature
negotiation).  This is potentially useful because guests which don't
support resizing will need an HPT sized for their maximum possible
RAM, which can be very wasteful of host resources.

This implementation will work for both TCG and KVM guests.  HV KVM
requires support in the host kernel which is also included in v4.11.

Changes since v6:
 * Rebase for current tree
 * Adjustments to fail gracefully for POWER9 RPT guests
Changes since v5:
 * Rebase for qemu-2.10
 * Kernel patches now merged
 * Removed an unnecessary and possibly dangerous assert()
Changes since v4 (misposted as v3):
 * More minor revisions based on review comments
 * Altered to use new simpler encoding of kernel capability
Changes since v3:
 * Assorted minor revisions based on review
 * Added KVM support (PR and HV)
Changes since v2:
 * Some clearer comments based on review
 * Some minor cleanups based on review

David Gibson (5):
  pseries: Stubs for HPT resizing
  pseries: Implement HPT resizing
  pseries: Enable HPT resizing for 2.10
  pseries: Use smaller default hash page tables when guest can resize
  pseries: Allow HPT resizing with KVM

 hw/ppc/spapr.c              | 103 ++++++++++-
 hw/ppc/spapr_hcall.c        | 439 ++++++++++++++++++++++++++++++++++++++++++++
 hw/ppc/trace-events         |   2 +
 include/hw/ppc/spapr.h      |  19 ++
 include/hw/ppc/spapr_ovec.h |   1 +
 target/ppc/kvm.c            |  76 ++++++++
 target/ppc/kvm_ppc.h        |  26 +++
 target/ppc/mmu-hash64.h     |   4 +
 8 files changed, 662 insertions(+), 8 deletions(-)

-- 
2.9.4

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-07-12 13:12 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-12 13:11 [Qemu-devel] [PATCHv7 0/5] HPT resizing for pseries guests (qemu part) David Gibson
2017-07-12 13:11 ` [Qemu-devel] [PATCHv7 1/5] pseries: Stubs for HPT resizing David Gibson
2017-07-12 13:11 ` [Qemu-devel] [PATCHv7 2/5] pseries: Implement " David Gibson
2017-07-12 13:11 ` [Qemu-devel] [PATCHv7 3/5] pseries: Enable HPT resizing for 2.10 David Gibson
2017-07-12 13:11 ` [Qemu-devel] [PATCHv7 4/5] pseries: Use smaller default hash page tables when guest can resize David Gibson
2017-07-12 13:11 ` [Qemu-devel] [PATCHv7 5/5] pseries: Allow HPT resizing with KVM David Gibson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.