• Ravi Bangoria's avatar
    perf script ibs: Support new IBS bits in raw trace dump · 0429796e
    Ravi Bangoria authored
    Interpret Additional set of IBS register bits while doing
    perf report/script raw dump.
    
    IBS op PMU ex:
    
      $ sudo ./perf record -c 130 -a -e ibs_op/l3missonly=1/ --raw-samples
      $ sudo ./perf report -D
      ...
      ibs_op_ctl:     0000004500070008 MaxCnt       128 L3MissOnly 1 En 1
            Val 1 CntCtl 0=cycles CurCnt        69
      ibs_op_data:    0000000000710002 CompToRetCtr     2 TagToRetCtr   113
            BrnRet 0  RipInvalid 0 BrnFuse 0 Microcode 0
      ibs_op_data2:   0000000000000002 CacheHitSt 0=M-state RmtNode 0
            DataSrc 2=A peer cache in a near CCX
      ibs_op_data3:   000000681d1700a1 LdOp 1 StOp 0 DcL1TlbMiss 0
            DcL2TlbMiss 0 DcL1TlbHit2M 0 DcL1TlbHit1G 1 DcL2TlbHit2M 0
            DcMiss 1 DcMisAcc 0 DcWcMemAcc 0 DcUcMemAcc 0 DcLockedOp 0
            DcMissNoMabAlloc 1 DcLinAddrValid 1 DcPhyAddrValid 1
            DcL2TlbHit1G 0 L2Miss 1 SwPf 0 OpMemWidth  8 bytes
            OpDcMissOpenMemReqs  7 DcMissLat   104 TlbRefillLat     0
    
    IBS Fetch PMU ex:
      $ sudo ./perf record -c 130 -a -e ibs_fetch/l3missonly=1/ --raw-samples
      $ sudo ./perf report -D
      ...
      ibs_fetch_ctl:  3c1f00c700080008 MaxCnt     128 Cnt     128 Lat   199
            En 1 Val 1 Comp 1 IcMiss 1 PhyAddrValid        1 L1TlbPgSz 4KB
            L1TlbMiss 0 L2TlbMiss 0 RandEn 0 L2Miss 1 L3MissOnly 1
            FetchOcMiss 1 FetchL3Miss 1
    
    With the DataSrc extensions, the source of data can be decoded among:
     - Local L3 or other L1/L2 in CCX.
     - A peer cache in a near CCX.
     - Data returned from DRAM.
     - A peer cache in a far CCX.
     - DRAM address map with "long latency" bit set.
     - Data returned from MMIO/Config/PCI/APIC.
     - Extension Memory (S-Link, GenZ, etc - identified by the CS target
        and/or address map at DF's choice).
     - Peer Agent Memory.
    Signed-off-by: default avatarRavi Bangoria <ravi.bangoria@amd.com>
    Acked-by: default avatarNamhyung Kim <namhyung@kernel.org>
    Cc: Ananth Narayan <ananth.narayan@amd.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Ian Rogers <irogers@google.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: James Clark <james.clark@arm.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Kan Liang <kan.liang@linux.intel.com>
    Cc: Kim Phillips <kim.phillips@amd.com>
    Cc: Leo Yan <leo.yan@linaro.org>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Robert Richter <rrichter@amd.com>
    Cc: Sandipan Das <sandipan.das@amd.com>
    Cc: Santosh Shukla <santosh.shukla@amd.com>
    Cc: Stephane Eranian <eranian@google.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: like.xu.linux@gmail.com
    Cc: x86@kernel.org
    Link: https://lore.kernel.org/r/20220604044519.594-9-ravi.bangoria@amd.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    0429796e
amd-sample-raw.c 10.8 KB