s390/kdump: Disable mmap for s390
authorMichael Holzheu <holzheu@linux.vnet.ibm.com>
Thu, 18 Jul 2013 10:17:57 +0000 (12:17 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Thu, 18 Jul 2013 11:40:18 +0000 (13:40 +0200)
The kdump mmap patch series (git commit 83086978c63afd7c73e1c) directly
map the PT_LOADs to memory. On s390 this does not work because the
copy_from_oldmem() function swaps [0,crashkernel size] with
[crashkernel base, crashkernel base+crashkernel size]. The swap
int copy_from_oldmem() was done in order correctly implement /dev/oldmem.

See: http://marc.info/?l=kexec&m=136940802511603&w=2

Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
fs/proc/vmcore.c

index 28503172f2e4a2d16a87a87098ad5db615317565..a1a16eb97c7bd141c7a68419b44769ebea35c854 100644 (file)
@@ -223,7 +223,7 @@ static inline char *alloc_elfnotes_buf(size_t notes_sz)
  * regions in the 1st kernel pointed to by PT_LOAD entries) into
  * virtually contiguous user-space in ELF layout.
  */
-#ifdef CONFIG_MMU
+#if defined(CONFIG_MMU) && !defined(CONFIG_S390)
 static int mmap_vmcore(struct file *file, struct vm_area_struct *vma)
 {
        size_t size = vma->vm_end - vma->vm_start;