kernel_optimize_test/arch/s390/mm
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
..
cmm.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
dump_pagetables.c s390/mm: add page table dumper 2012-10-09 14:16:58 +02:00
extable.c s390/exceptions: switch to relative exception table entries 2012-09-26 15:45:10 +02:00
extmem.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
fault.c readahead: fault retry breaks mmap file read random detection 2012-10-09 16:22:47 +09:00
gup.c thp, s390: thp splitting backend for s390 2012-10-09 16:22:30 +09:00
hugetlbpage.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
init.c s390/mm: mark free_initrd_mem() as __init 2012-09-26 15:45:27 +02:00
maccess.c s390/kernel: Introduce memcpy_absolute() function 2012-05-30 09:04:49 +02:00
Makefile s390/mm: add page table dumper 2012-10-09 14:16:58 +02:00
mmap.c s390/mm: downgrade page table after fork of a 31 bit process 2012-07-26 16:24:14 +02:00
page-states.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
pageattr.c s390/mm,pageattr: remove superfluous EXPORT_SYMBOLs 2012-10-09 14:16:57 +02:00
pgtable.c thp, s390: architecture backend for thp on s390 2012-10-09 16:22:31 +09:00
vmem.c s390/mm: fix pmd_huge() usage for kernel mapping 2012-10-09 14:16:56 +02:00