Well-designed kernels and modules report issues through the kernel ring buffer. This is also true for Vitis technology modules that allow you to debug the interaction with the accelerator board on the lowest Linux level.
dmesg utility is a Linux tool that
lets you read the kernel ring buffer. The kernel ring buffer holds kernel information
messages in a circular buffer. A circular buffer of fixed size is used to limit the
resource requirements by overwriting the oldest entry with the next incoming
xbutilfeature to localize an issue. Refer to Using the Xilinx xbutil Utility for more information on using this tool for debug.
In the Vitis technology, the
xocl module and
driver modules write informational messages to the ring buffer. Thus, for an application
hang, crash, or any unexpected behavior (like being unable to program the bitstream,
dmesg tool should be used to check the ring
The following image shows the layers of the software platform associated with the target platform.
To review messages from the Linux tool, you should first clear the ring buffer:
sudo dmesg -c
This flushes all messages from the ring buffer and makes it easier to
spot messages from the
xclmgmt. After that, start your application and run
dmesg in another terminal.
dmesg utility prints a record shown
in the following example:
In the example shown above, the AXI Firewall 2 has tripped, which is
better examined using the