繁体   English   中英

远程'g'数据包回复太长aarch64 arm64

[英]Remote 'g' packet reply is too long aarch64 arm64

我正在尝试设置KGDB来调试arm64内核。 我的设置是目标在内核3.14上运行(向后移植了一些arm64 kgdb补丁),在主机上,我使用了linaro工具链4.8 aarch64-linux-gnu-gdb,并且在每次发布时:

target remote /dev/ttyS0

我收到错误消息:

Remote 'g' packet reply is too long:

我在这个问题上搜索了很多,但没有一个对我有用。 我认为此问题特定于arm64。 这里有没有人知道如何进行?

在这里启发了这个问题: https : //answers.launchpad.net/gcc-arm-embedded/+question/193249

我找到了解决方案。 发行前

target remote /dev/ttyS0

请执行下列操作

set tdesc filename aarch64.xml

我从最新的gdb源代码中获取了aarch64.xml:gdb-7.8 / gdb / features / aarch64.xml。 通过这样做,我们指示GDB客户端接受比其最初预期更多的寄存器。

根本原因似乎是GDB客户端仅需要31个寄存器以及SP,PC,CPSR寄存器,但是内核gdb存根不仅返回那些寄存器,而且还返回其他FPU寄存器,这将导致错误消息:

Remote 'g' packet reply is too long:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM