为了让kgdb在我的sytsem中工作,我一直在自欺欺人,但同时它却没有。我正在使用TI的SDK,它基于2.6.37Git。在尝试使用串行程序时,我总是得到以下异常:
我尝试过两种模式下的kgdb,但都失败了:
1) from :我添加了带有:
"kgdboc=ttyO0,115200 kgdbwait".
------------[ cut here ]------------
WARNING: at drivers/serial/serial_core.c:399 uart_get_baud_rate+0x124/0x138()
Modules linked in:
Backtrace:
[<c004ffc4>] (dump_backtrace+0x0/0x110) from [<c03ee140>] (dump_stack+0x18/0x1c)
r6:c04f4d9f r5:0000018f r4:00000000 r3:60000013root@dm814x:~# echo ttyS0 > /sys/module/kgdboc/parameters/kgdboc
kgdb: Registered I/O driver kgdboc.
root@dm814x:~# echo g > /proc/sysrq-trigger
SysRq : DEBUG
Entering KGDB
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c4368000
[00000000] *pgd=84042031, *pte=00000000, *ppte=00000000
Internal error: Oops: 80000007 [#1]
last sysfs file: /sys/module/kgdboc/parameters/kgdboc
KGDB: re-enter exception: ALL breakpoints killed
Backtrace:内核配置使用:
CONFIG_KGDB
CONFIG_KGDB_SERIAL你猜到问题出在哪里了吗?也许我需要用kgdb适当的补丁来修补内核?
发布于 2016-02-11 06:51:25
在尝试使用ttyS0时,我也有一个空指针取消引用。结果显示,我必须指定ttyO0而不是ttyS0。我看到您在引导期间在安装程序中编写了ttyO0,在启动后在可选交互设置中编写了ttyS0,这可能会暴露出对此主题的一些混淆。所以,请澄清你使用的是哪一种。有关KDB作为kgdb前端的更多信息,请参见http://elinux.org/KDB,它对我帮助很大,因为它是一个详细的描述,包括示例,还包括如何配置内核以至少使用kgdb/kdb的大多数特性。
https://unix.stackexchange.com/questions/148651
复制相似问题