Debugability
Overview of Intel® QAT debugfs entries
Some useful debugging information for the driver and configuration is available via the Linux debugfs file system, with the entries /sys/kernel/debug/qat_*
and /sys/kernel/debug/qae_mem_dbg/qae_mem_slabs
.
Entries in /sys/kernel/debug/qat_*
This includes:
Entry |
Description |
Supported Platforms |
---|---|---|
|
Indicates number of compressAndVerify errors. Refer to Compress and Verify Error log in Sysfs. |
All |
|
Displays internal device configuration information. |
All |
|
Displays frequency of Acceleration Engines. |
All |
|
Displays Acceleration Engine firmware requests/responses. |
All |
|
Refer to System Virtual Files. |
All |
|
Displays power management status. Refer to Power Management for additional information. |
QAT 2.0 |
|
Contains firmware request/response data. Available only for kernel space instances. |
All |
|
Includes package version information. |
All |
Memory driver queries ( qae_mem_slabs )
Debug features are also available by reading and writing the file /sys/kernel/debug/qae_mem_dbg/qae_mem_slabs
. When reading the virtual/physical address
, size
and slab id
together with the pid
of the allocating process are shown. Writing a string to the file will start executing debug commands.
For example:
# cat /sys/kernel/debug/qae_mem_dbg/qae_mem_slabs
Pid 78854, Slab Id 10550771712
Virtual address 000000000b39412d, Physical Address 274e00000, Size 2097152
Pid 78854, Slab Id 10309599232
Virtual address 000000003670dd45, Physical Address 266800000, Size 2097152
...
There are three commands supported, and the below table shows their output:
Writing these strings… |
…will output this when the file is read |
---|---|
d <pid> <virtual or physical address> |
The 256 byte in hex and ascii from the start address |
“c <pid> <slab id>” (pid should be the process id that can be obtained by a previous read) |
The allocation bit map for the given slab identifier |
“t” |
Total size of NUMA memory allocated in kernel space |
For example, by combining a write to the file and a subsequent read, you can see the total allocated NUMA memory, e.g.:
# echo "t" > /sys/kernel/debug/qae_mem_dbg/qae_mem_slabs ; cat /sys/kernel/debug/qae_mem_dbg/qae_mem_slabs
Total allocated NUMA memory: 142606336 bytes
As above, the “d” and “c” commands will output their respective information.