852622bf36
This GDB script shows the vmallocinfo for user to analyze the vmalloc memory usage. Example output: 0xffff800008000000-0xffff800008009000 36864 <start_kernel+372> pages=8 vmalloc 0xffff800008009000-0xffff80000800b000 8192 <gicv2m_init_one+400> phys=0x8020000 ioremap 0xffff80000800b000-0xffff80000800d000 8192 <bpf_prog_alloc_no_stats+72> pages=1 vmalloc 0xffff80000800d000-0xffff80000800f000 8192 <bpf_jit_alloc_exec+16> pages=1 vmalloc 0xffff800008010000-0xffff80000ad30000 47316992 <paging_init+452> phys=0x40210000 vmap 0xffff80000ad30000-0xffff80000c1c0000 21561344 <paging_init+556> phys=0x42f30000 vmap 0xffff80000c1c0000-0xffff80000c370000 1769472 <paging_init+592> phys=0x443c0000 vmap 0xffff80000c370000-0xffff80000de90000 28442624 <paging_init+692> phys=0x44570000 vmap 0xffff80000de90000-0xffff80000f4c1000 23269376 <paging_init+788> phys=0x46090000 vmap 0xffff80000f4c1000-0xffff80000f4c3000 8192 <gen_pool_add_owner+112> pages=1 vmalloc 0xffff80000f4c3000-0xffff80000f4c5000 8192 <gen_pool_add_owner+112> pages=1 vmalloc 0xffff80000f4c5000-0xffff80000f4c7000 8192 <gen_pool_add_owner+112> pages=1 vmalloc Link: https://lkml.kernel.org/r/20230808083020.22254-9-Kuan-Ying.Lee@mediatek.com Signed-off-by: Kuan-Ying Lee <Kuan-Ying.Lee@mediatek.com> Cc: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Cc: Chinwen Chang <chinwen.chang@mediatek.com> Cc: Matthias Brugger <matthias.bgg@gmail.com> Cc: Qun-Wei Lin <qun-wei.lin@mediatek.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
52 lines
1.3 KiB
Python
52 lines
1.3 KiB
Python
#
|
|
# gdb helper commands and functions for Linux kernel debugging
|
|
#
|
|
# loader module
|
|
#
|
|
# Copyright (c) Siemens AG, 2012, 2013
|
|
#
|
|
# Authors:
|
|
# Jan Kiszka <jan.kiszka@siemens.com>
|
|
#
|
|
# This work is licensed under the terms of the GNU GPL version 2.
|
|
#
|
|
|
|
import os
|
|
|
|
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)) + "/scripts/gdb")
|
|
|
|
try:
|
|
gdb.parse_and_eval("0")
|
|
gdb.execute("", to_string=True)
|
|
except:
|
|
gdb.write("NOTE: gdb 7.2 or later required for Linux helper scripts to "
|
|
"work.\n")
|
|
else:
|
|
import linux.constants
|
|
if linux.constants.LX_CONFIG_DEBUG_INFO_REDUCED:
|
|
raise gdb.GdbError("Reduced debug information will prevent GDB "
|
|
"from having complete types.\n")
|
|
import linux.utils
|
|
import linux.symbols
|
|
import linux.modules
|
|
import linux.dmesg
|
|
import linux.tasks
|
|
import linux.config
|
|
import linux.cpus
|
|
import linux.lists
|
|
import linux.rbtree
|
|
import linux.proc
|
|
import linux.timerlist
|
|
import linux.clk
|
|
import linux.genpd
|
|
import linux.device
|
|
import linux.vfs
|
|
import linux.pgtable
|
|
import linux.radixtree
|
|
import linux.interrupts
|
|
import linux.mm
|
|
import linux.stackdepot
|
|
import linux.page_owner
|
|
import linux.slab
|
|
import linux.vmalloc
|