精心设计的内核和模块通过内核环形缓冲器报告问题。此方法对于 Vitis 技术模块同样有效,这些模块允许您在最低 Linux 级别上对与加速器开发板的互动进行调试。
dmesg
实用工具是一种 Linux 工具,可让您读取内核环形缓冲器。内核环形缓冲器可将内核参考消息保存在圆形缓冲器内。固定大小尺寸的圆形缓冲器可用于限制资源要求,方法是通过利用下一条传入消息来覆盖最旧的条目。
在 Vitis 技术中,xocl
模块和 xclmgmt
驱动程序模块会向环形缓冲器写入参考消息。因此,对于应用挂起、崩溃或任何意外行为(例如,无法进行比特流编程等),都应使用 dmesg
工具来检查环形缓冲器。
下图显示了与目标平台关联的软件平台的各层次。
图 1. 软件平台层
要复查来自 Linux 工具的消息,应首先清空环形缓冲器:
sudo dmesg -c
此操作将从环形缓冲器中刷新所有消息,使其更容易发现来自 xocl
和 xclmgmt
的消息。完成此操作后,启动您的应用并在另一个终端中运行 dmesg
。
sudo dmesg
dmesg
实用工具会打印一条记录,如以下示例所示:
图 2. dmesg 实用工具示例
在以上示例中,AXI 防火墙 2 已脱扣,最好使用 xbutil
实用工具来对其进行检查。