s390/mm: shadow pages with real guest requested protection
authorDavid Hildenbrand <dahi@linux.vnet.ibm.com>
Tue, 8 Mar 2016 11:21:41 +0000 (12:21 +0100)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Mon, 20 Jun 2016 07:54:19 +0000 (09:54 +0200)
commita9d23e71d7716e394a772686bfd994f4e181b235
tree1eb27541f5c1b5c3d9bf504e3cd9306d10b19adb
parenteea3678d4334925bf838e6f4bc88760811a84cd6
s390/mm: shadow pages with real guest requested protection

We really want to avoid manually handling protection for nested
virtualization. By shadowing pages with the protection the guest asked us
for, the SIE can handle most protection-related actions for us (e.g.
special handling for MVPG) and we can directly forward protection
exceptions to the guest.

PTEs will now always be shadowed with the correct _PAGE_PROTECT flag.
Unshadowing will take care of any guest changes to the parent PTE and
any host changes to the host PTE. If the host PTE doesn't have the
fitting access rights or is not available, we have to fix it up.

Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
arch/s390/include/asm/gmap.h
arch/s390/include/asm/pgtable.h
arch/s390/kvm/gaccess.c
arch/s390/mm/gmap.c
arch/s390/mm/pgtable.c