summaryrefslogtreecommitdiffstats
path: root/arch/s390/mm
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2016-05-19 16:25:30 +0200
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2016-06-13 15:58:14 +0200
commit3e76ee99b095e5bee71165fda5edbe6b66b39700 (patch)
tree48a2b24b6fee363593b53d0d568b20a7e3a62401 /arch/s390/mm
parents390/vmem: make use of pte_clear() (diff)
downloadlinux-3e76ee99b095e5bee71165fda5edbe6b66b39700.tar.xz
linux-3e76ee99b095e5bee71165fda5edbe6b66b39700.zip
s390/mm: always use PAGE_KERNEL when mapping pages
Always use PAGE_KERNEL when re-enabling pages within the kernel mapping due to debug pagealloc. Without using this pgprot value pte_mkwrite() and pte_wrprotect() won't work on such mappings after an unmap -> map cycle anymore. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/mm')
-rw-r--r--arch/s390/mm/pageattr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/s390/mm/pageattr.c b/arch/s390/mm/pageattr.c
index f2a5c29a97e9..e67a8f712e19 100644
--- a/arch/s390/mm/pageattr.c
+++ b/arch/s390/mm/pageattr.c
@@ -138,7 +138,7 @@ void __kernel_map_pages(struct page *page, int numpages, int enable)
nr = min(numpages - i, nr);
if (enable) {
for (j = 0; j < nr; j++) {
- pte_val(*pte) = __pa(address);
+ pte_val(*pte) = address | pgprot_val(PAGE_KERNEL);
address += PAGE_SIZE;
pte++;
}