mirror of
https://github.com/torvalds/linux.git
synced 2024-12-30 06:41:43 +00:00
e76e82d772
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>
50 lines
1.5 KiB
Plaintext
50 lines
1.5 KiB
Plaintext
menu "Kernel hacking"
|
|
|
|
config TRACE_IRQFLAGS_SUPPORT
|
|
def_bool y
|
|
|
|
source "lib/Kconfig.debug"
|
|
|
|
config STRICT_DEVMEM
|
|
def_bool y
|
|
prompt "Filter access to /dev/mem"
|
|
---help---
|
|
This option restricts access to /dev/mem. If this option is
|
|
disabled, you allow userspace access to all memory, including
|
|
kernel and userspace memory. Accidental memory access is likely
|
|
to be disastrous.
|
|
Memory access is required for experts who want to debug the kernel.
|
|
|
|
If you are unsure, say Y.
|
|
|
|
config DEBUG_STRICT_USER_COPY_CHECKS
|
|
def_bool n
|
|
prompt "Strict user copy size checks"
|
|
---help---
|
|
Enabling this option turns a certain set of sanity checks for user
|
|
copy operations into compile time warnings.
|
|
|
|
The copy_from_user() etc checks are there to help test if there
|
|
are sufficient security checks on the length argument of
|
|
the copy operation, by having gcc prove that the argument is
|
|
within bounds.
|
|
|
|
If unsure, or if you run an older (pre 4.4) gcc, say N.
|
|
|
|
config S390_PTDUMP
|
|
bool "Export kernel pagetable layout to userspace via debugfs"
|
|
depends on DEBUG_KERNEL
|
|
select DEBUG_FS
|
|
---help---
|
|
Say Y here if you want to show the kernel pagetable layout in a
|
|
debugfs file. This information is only useful for kernel developers
|
|
who are working in architecture specific areas of the kernel.
|
|
It is probably not a good idea to enable this feature in a production
|
|
kernel.
|
|
If in doubt, say "N"
|
|
|
|
config DEBUG_SET_MODULE_RONX
|
|
def_bool y
|
|
depends on MODULES
|
|
endmenu
|