【发布时间】:2012-01-29 13:16:35
【问题描述】:
我正在尝试使用 kvm vm 调试 Linux 内核。我收到一条错误消息“远程 'g' 数据包回复太长”。我的主机是 64 位的,我的 vm 也是。
我的步骤:
- 使用自定义 -kernel、-initrd 和 -append 选项启动 VM。
- 启动 gdb
- 执行“设置架构 i386:x86-64:intel”
- 执行“add-symbol-file linux-3.0/vmlinux”
- 执行“show arch”验证其仍然是“i386:x86-64:intel”
- 执行“目标远程本地主机:1234”
- 执行“继续”
- 按Ctrl+C,我得到了上面的信息。
有人遇到过这个问题吗?
【问题讨论】:
-
我的 vm 运行 ubuntu,主机运行 debian
-
如果我看到 gdb 代码,remote.c /* 远程协议寄存器的描述。 */ long sizeof_g_packet;与预期不符。看起来您的 gdbserver 配置不正确(不过我不太确定)。你在启动 GDB 服务器吗?如果是,您的 GDB 和 GDBSERVER 版本是否匹配?
-
在 GDB bugtracker 上类似:sourceware.org/bugzilla/show_bug.cgi?id=13984
标签: gdb linux-kernel kvm