gpt4 book ai didi

linux - GDB:linux 内置模块中的断点失败

转载 作者:太空宇宙 更新时间:2023-11-04 12:06:15 25 4
gpt4 key购买 nike

我正在使用通过串行端口连接的两个虚拟机调试 linux 内核。

目标机器 等待来自远程 gdb 的连接,方法是在 的正确条目中插入 kgdbwait()kgdboc=ttyS0,115200 >/boot/grub/grub.cfg

主机

sudo gdb ./vmlinux

已读取符号,我应该能够在函数名称上放置断点。

(gdb) break oom_kill_process
Breakpoint 1 at 0xc1172ef0: file mm/oom_kill.c, line 843.

工作正常!

但是,如果我在 htb_dequeue_tree 处设置一个断点,它会被找到 here ,我收到以下错误:

(gdb) break htb_dequeue_tree

No symbol "htb_dequeue_tree" in current context.

最佳答案

最典型的原因是函数被内联——然后没有符号开始。通常,您可以在文件 + 行对上设置一个中断(例如 foo.c:42)。

在您的特定情况下,该函数是静态的并且只有一个用户:htp_dequeue。如果你反汇编它,你可能会看到 htp_dequeue_tree 中的代码被吞噬了。如果没有,还有一些其他的破坏正在发生(破坏其他功能是否有效?)

关于linux - GDB:linux 内置模块中的断点失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50618517/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com