]> git.baikalelectronics.ru Git - kernel.git/commit
s390/dump: Fix dump memory detection
authorMichael Holzheu <holzheu@linux.vnet.ibm.com>
Thu, 30 Jan 2014 15:14:02 +0000 (16:14 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Tue, 4 Feb 2014 14:39:51 +0000 (15:39 +0100)
commitf7d401b990d73ccf52d71d0a09da5396477529dd
tree11988899cda4e5875343f750259442d479cca6f2
parente87c392dba0963b7b0869a337a24cdd95a09c98b
s390/dump: Fix dump memory detection

Dumps created by kdump or zfcpdump can contain invalid memory holes when
dumping z/VM systems that have memory pressure.

For example:

   # zgetdump -i /proc/vmcore.
   Memory map:
   0000000000000000 - 0000000000bfffff (12 MB)
   0000000000e00000 - 00000000014fffff (7 MB)
   000000000bd00000 - 00000000f3bfffff (3711 MB)

The memory detection function find_memory_chunks() issues tprot to
find valid memory chunks. In case of CMM it can happen that pages are
marked as unstable via set_page_unstable() in arch_free_page().
If z/VM has released that pages, tprot returns -EFAULT and indicates
a memory hole.

So fix this and switch off CMM in case of kdump or zfcpdump.

Cc: <stable@vger.kernel.org>
Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/mm/page-states.c