]> git.baikalelectronics.ru Git - kernel.git/commit
s390/mm: Add gmap pmd invalidation and clearing
authorJanosch Frank <frankja@linux.ibm.com>
Fri, 13 Jul 2018 10:28:22 +0000 (11:28 +0100)
committerJanosch Frank <frankja@linux.ibm.com>
Mon, 30 Jul 2018 10:20:17 +0000 (11:20 +0100)
commitc76d04724507411ad8f7f5b663660e48f43cb853
treea2b36696a3dffcbbe80126f8cb566f781cd33bcf
parent2e6cce2c0b01d603da50ebce57ae318d922ea590
s390/mm: Add gmap pmd invalidation and clearing

If the host invalidates a pmd, we also have to invalidate the
corresponding gmap pmds, as well as flush them from the TLB. This is
necessary, as we don't share the pmd tables between host and guest as
we do with ptes.

The clearing part of these three new functions sets a guest pmd entry
to _SEGMENT_ENTRY_EMPTY, so the guest will fault on it and we will
re-link it.

Flushing the gmap is not necessary in the host's lazy local and csp
cases. Both purge the TLB completely.

Signed-off-by: Janosch Frank <frankja@linux.vnet.ibm.com>
Reviewed-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Acked-by: David Hildenbrand <david@redhat.com>
arch/s390/include/asm/pgtable.h
arch/s390/mm/gmap.c
arch/s390/mm/pgtable.c