KVM: s390: Allow skeys to be enabled for the current process
authorDominik Dingel <dingel@linux.vnet.ibm.com>
Tue, 14 Jan 2014 17:10:17 +0000 (18:10 +0100)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Tue, 22 Apr 2014 07:36:25 +0000 (09:36 +0200)
commit934bc131efc3e4be6a52f7dd6c4dbf99635e381a
tree67b5df8e42e7db5f1f59f7d851b97923b5336678
parentd4cb11340be6a1613d40d2b546cb111ea2547066
KVM: s390: Allow skeys to be enabled for the current process

Introduce a new function s390_enable_skey(), which enables storage key
handling via setting the use_skey flag in the mmu context.

This function is only useful within the context of kvm.

Note that enabling storage keys will cause a one-time hickup when
walking the page table; however, it saves us special effort for cases
like clear reset while making it possible for us to be architecture
conform.

s390_enable_skey() takes the page table lock to prevent reseting
storage keys triggered from multiple vcpus.

Signed-off-by: Dominik Dingel <dingel@linux.vnet.ibm.com>
Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
arch/s390/include/asm/pgtable.h
arch/s390/mm/pgtable.c