1. 10 Feb, 2017 2 commits
    • David Gibson's avatar
      powerpc/pseries: Advertise HPT resizing support via CAS · 0de0fb09
      David Gibson authored
      The hypervisor needs to know a guest is capable of using the HPT resizing
      PAPR extension in order to make full advantage of it for memory hotplug.
      
      If the hypervisor knows the guest is HPT resize aware, it can size the
      initial HPT based on the initial guest RAM size, relying on the guest to
      resize the HPT when more memory is hot-added. Without this, the hypervisor
      must size the HPT for the maximum possible guest RAM, which can lead to
      a huge waste of space if the guest never actually expends to that maximum
      size.
      
      This patch advertises the guest's support for HPT resizing via the
      ibm,client-architecture-support OF interface. We use bit 5 of byte 6 of
      option vector 5 for this purpose, as defined in the PAPR ACR "HPT
      resizing option".
      Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
      Reviewed-by: default avatarAnshuman Khandual <khandual@linux.vnet.ibm.com>
      Reviewed-by: default avatarPaul Mackerras <paulus@samba.org>
      Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
      0de0fb09
    • David Gibson's avatar
      powerpc/pseries: Add support for hash table resizing · dbcf929c
      David Gibson authored
      This adds support for using two hypercalls to change the size of the
      main hash page table while running as a PAPR guest. For now these
      hypercalls are only in experimental qemu versions.
      
      The interface is two part: first H_RESIZE_HPT_PREPARE is used to
      allocate and prepare the new hash table. This may be slow, but can be
      done asynchronously. Then, H_RESIZE_HPT_COMMIT is used to switch to the
      new hash table. This requires that no CPUs be concurrently updating the
      HPT, and so must be run under stop_machine().
      
      This also adds a debugfs file which can be used to manually control
      HPT resizing or testing purposes.
      Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
      Reviewed-by: default avatarPaul Mackerras <paulus@samba.org>
      [mpe: Rename the debugfs file to "hpt_order"]
      Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
      dbcf929c
  2. 09 Feb, 2017 1 commit
  3. 08 Feb, 2017 6 commits
  4. 07 Feb, 2017 11 commits
  5. 06 Feb, 2017 11 commits
  6. 03 Feb, 2017 4 commits
  7. 02 Feb, 2017 5 commits