mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-17 02:36:21 +00:00
d1c4dedcd2
[ Upstream commit 8af055ae25bff48f57227f5e3d48a4306f3dd1c4 ] If CONFIG_DEBUG_INFO_REDUCED is enabled in the kernel configuration, we will typically not be able to load vmlinux-gdb.py and will fail with: Traceback (most recent call last): File "/home/fainelli/work/buildroot/output/arm64/build/linux-custom/vmlinux-gdb.py", line 25, in <module> import linux.utils File "/home/fainelli/work/buildroot/output/arm64/build/linux-custom/scripts/gdb/linux/utils.py", line 131, in <module> atomic_long_counter_offset = atomic_long_type.get_type()['counter'].bitpos KeyError: 'counter' Rather be left wondering what is happening only to find out that reduced debug information is the cause, raise an eror. This was not typically a problem until e3c8d33e0d62 ("scripts/gdb: fix 'lx-dmesg' on 32 bits arch") but it has since then. Link: https://lkml.kernel.org/r/20230406215252.1580538-1-f.fainelli@gmail.com Fixes: e3c8d33e0d62 ("scripts/gdb: fix 'lx-dmesg' on 32 bits arch") Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Cc: Antonio Borneo <antonio.borneo@foss.st.com> Cc: Jan Kiszka <jan.kiszka@siemens.com> Cc: John Ogness <john.ogness@linutronix.de> Cc: Kieran Bingham <kbingham@kernel.org> Cc: Petr Mladek <pmladek@suse.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
43 lines
1.0 KiB
Python
43 lines
1.0 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(__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
|