On Wed, Sep 25, 2019 at 10:36:41AM +0530, Bharata B Rao wrote: > [The main change in this version is the introduction of new > locking to prevent concurrent page-in and page-out calls. More > details about this are present in patch 2/8] > > Hi, > > A pseries guest can be run as a secure guest on Ultravisor-enabled > POWER platforms. On such platforms, this driver will be used to manage > the movement of guest pages between the normal memory managed by > hypervisor(HV) and secure memory managed by Ultravisor(UV). > > Private ZONE_DEVICE memory equal to the amount of secure memory > available in the platform for running secure guests is created. > Whenever a page belonging to the guest becomes secure, a page from > this private device memory is used to represent and track that secure > page on the HV side. The movement of pages between normal and secure > memory is done via migrate_vma_pages(). The reverse movement is driven > via pagemap_ops.migrate_to_ram(). > > The page-in or page-out requests from UV will come to HV as hcalls and > HV will call back into UV via uvcalls to satisfy these page requests. > > These patches are against hmm.git > (https://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git/log/?h=hmm) > > plus > > Claudio Carvalho's base ultravisor enablement patches that are present > in Michael Ellerman's tree > (https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/log/?h=topic/ppc-kvm) > > These patches along with Claudio's above patches are required to > run secure pseries guests on KVM. This patchset is based on hmm.git > because hmm.git has migrate_vma cleanup and not-device memremap_pages > patchsets that are required by this patchset. FWIW this is all merged to Linus now and will be in rc1 Jason