summaryrefslogtreecommitdiffstats
path: root/arch/s390/include
diff options
context:
space:
mode:
authorChristian Borntraeger <borntraeger@de.ibm.com>2013-05-27 10:42:04 +0200
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2013-06-26 21:10:04 +0200
commit24d5dd0208ed1cd3ef6bf30a50b347ef366f21ac (patch)
tree14d46de484f1297ce965e8b95a63ae167729a2fd /arch/s390/include
parent25b41a7b67ee4f4d12cee8a4b8b5929e36c27e29 (diff)
downloadblackbird-op-linux-24d5dd0208ed1cd3ef6bf30a50b347ef366f21ac.tar.gz
blackbird-op-linux-24d5dd0208ed1cd3ef6bf30a50b347ef366f21ac.zip
s390/kvm: Provide function for setting the guest storage key
From time to time we need to set the guest storage key. Lets provide a helper function that handles the changes with all the right locking and checking. Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/include')
-rw-r--r--arch/s390/include/asm/pgalloc.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/s390/include/asm/pgalloc.h b/arch/s390/include/asm/pgalloc.h
index 590c3219c634..e1408ddb94f8 100644
--- a/arch/s390/include/asm/pgalloc.h
+++ b/arch/s390/include/asm/pgalloc.h
@@ -22,6 +22,9 @@ unsigned long *page_table_alloc(struct mm_struct *, unsigned long);
void page_table_free(struct mm_struct *, unsigned long *);
void page_table_free_rcu(struct mmu_gather *, unsigned long *);
+int set_guest_storage_key(struct mm_struct *mm, unsigned long addr,
+ unsigned long key, bool nq);
+
static inline void clear_table(unsigned long *s, unsigned long val, size_t n)
{
typedef struct { char _[n]; } addrtype;
OpenPOWER on IntegriCloud