From: Heiko Carstens Date: Thu, 4 Oct 2012 15:02:02 +0000 (+0200) Subject: s390/mm: fix mapping of read-only kernel text section X-Git-Tag: v3.7-rc1~62^2~8 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8fe234d3c8d66771b327accb8eef26f70a8a8db8;p=profile%2Fivi%2Fkernel-x86-ivi.git s390/mm: fix mapping of read-only kernel text section Within the identity mapping the kernel text section is mapped read-only. However when mapping the first and last page of the text section we must round upwards and downwards respectively, if only parts of a page belong to the section. Otherwise potential rw data can be mapped read-only. So the rounding must be done just the other way we have it right now. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky --- diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c index 5b70393..d402b19 100644 --- a/arch/s390/mm/vmem.c +++ b/arch/s390/mm/vmem.c @@ -331,8 +331,8 @@ void __init vmem_map_init(void) unsigned long start, end; int i; - ro_start = ((unsigned long)&_stext) & PAGE_MASK; - ro_end = PFN_ALIGN((unsigned long)&_eshared); + ro_start = PFN_ALIGN((unsigned long)&_stext); + ro_end = (unsigned long)&_eshared & PAGE_MASK; for (i = 0; i < MEMORY_CHUNKS && memory_chunk[i].size > 0; i++) { if (memory_chunk[i].type == CHUNK_CRASHK || memory_chunk[i].type == CHUNK_OLDMEM)