linux/arch/s390
Heiko Carstens e76e82d772 s390/mm: add page table dumper
This is more or less the same as the x86 page table dumper which was
merged four years ago: 926e5392 "x86: add code to dump the (kernel)
page tables for visual inspection by kernel developers".

We add a file at /sys/kernel/debug/kernel_page_tables for debugging
purposes so it's quite easy to see the kernel page table layout and
possible odd mappings:

---[ Identity Mapping ]---
0x0000000000000000-0x0000000000100000        1M PTE RW
---[ Kernel Image Start ]---
0x0000000000100000-0x0000000000800000        7M PMD RO
0x0000000000800000-0x00000000008a9000      676K PTE RO
0x00000000008a9000-0x0000000000900000      348K PTE RW
0x0000000000900000-0x0000000001500000       12M PMD RW
---[ Kernel Image End ]---
0x0000000001500000-0x0000000280000000    10219M PMD RW
0x0000000280000000-0x000003d280000000     3904G PUD I
---[ vmemmap Area ]---
0x000003d280000000-0x000003d288c00000      140M PTE RW
0x000003d288c00000-0x000003d300000000     1908M PMD I
0x000003d300000000-0x000003e000000000       52G PUD I
---[ vmalloc Area ]---
0x000003e000000000-0x000003e000009000       36K PTE RW
0x000003e000009000-0x000003e0000ee000      916K PTE I
0x000003e0000ee000-0x000003e000146000      352K PTE RW
0x000003e000146000-0x000003e000200000      744K PTE I
0x000003e000200000-0x000003e080000000     2046M PMD I
0x000003e080000000-0x0000040000000000      126G PUD I

This usually makes only sense for kernel developers. The output
with CONFIG_DEBUG_PAGEALLOC is not very helpful, because of the
huge number of mapped out pages, however I decided for the time
being to not add a !DEBUG_PAGEALLOC dependency.
Maybe it's helpful for somebody even with that option.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2012-10-09 14:16:58 +02:00
..
appldata s390/vtimer: rework virtual timer interface 2012-07-20 11:15:08 +02:00
boot s390/ipl,decrompressor: disable branch profiling 2012-09-26 15:45:21 +02:00
crypto crypto: arch/s390 - cleanup - remove unneeded cra_list initialization 2012-08-01 17:47:29 +08:00
hypfs Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2012-10-02 20:25:04 -07:00
include s390/mm: fix pmd_huge() usage for kernel mapping 2012-10-09 14:16:56 +02:00
kernel s390: add support to start the kernel in 64 bit mode. 2012-10-09 14:16:58 +02:00
kvm KVM updates for the 3.7 merge window 2012-10-04 09:30:33 -07:00
lib s390/string: provide asm lib functions for memcpy and memcmp 2012-09-26 15:44:50 +02:00
math-emu s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
mm s390/mm: add page table dumper 2012-10-09 14:16:58 +02:00
net s390/bpf,jit: add support for BPF_S_ANC_ALU_XOR_X instruction 2012-09-26 15:45:28 +02:00
oprofile oprofile, s390: Fix uninitialized memory access when writing to oprofilefs 2012-08-27 14:49:23 +02:00
defconfig s390: update defconfig 2012-09-26 15:45:29 +02:00
Kbuild s390/bpf,jit: BPF Just In Time compiler for s390 2012-09-26 15:44:49 +02:00
Kconfig Kconfig: clean up the "#if defined(arch)" list for exception-trace sysctl entry 2012-10-09 16:22:14 +09:00
Kconfig.debug s390/mm: add page table dumper 2012-10-09 14:16:58 +02:00
Makefile s390: Use generic init_task 2012-05-05 13:00:25 +02:00