Re: [PATCH v13 3/3] perf tool: Add support for parsing HiSilicon PCIe Trace packet

From: Bjorn Helgaas
Date: Mon Sep 19 2022 - 13:32:47 EST


On Mon, Sep 19, 2022 at 05:00:45PM +0800, Yicong Yang wrote:
> From: Qi Liu <liuqi115@xxxxxxxxxx>
>
> Add support for using 'perf report --dump-raw-trace' to parse PTT packet.
>
> Example usage:
>
> Output will contain raw PTT data and its textual representation, such
> as:
>
> 0 0 0x5810 [0x30]: PERF_RECORD_AUXTRACE size: 0x400000 offset: 0
> ref: 0xa5d50c725 idx: 0 tid: -1 cpu: 0
> .
> . ... HISI PTT data: size 4194304 bytes
> . 00000000: 00 00 00 00 Prefix
> . 00000004: 08 20 00 60 Header DW0
> . 00000008: ff 02 00 01 Header DW1
> . 0000000c: 20 08 00 00 Header DW2
> . 00000010: 10 e7 44 ab Header DW3
> . 00000014: 2a a8 1e 01 Time
> . 00000020: 00 00 00 00 Prefix
> . 00000024: 01 00 00 60 Header DW0
> . 00000028: 0f 1e 00 01 Header DW1
> . 0000002c: 04 00 00 00 Header DW2
> . 00000030: 40 00 81 02 Header DW3
> . 00000034: ee 02 00 00 Time

This is great! Is there a way to actually decode the TLP headers?
E.g., something along the lines of what this does?
https://github.com/NetTLP/wireshark-nettlp/blob/master/plugins/nettlp.lua

If there is, it might be nice if the commit log included a hint about
how to do more decoding.

Bjorn