• Tom Zanussi's avatar
    dmaengine: idxd: Add IDXD performance monitor support · 81dd4d4d
    Tom Zanussi authored
    Implement the IDXD performance monitor capability (named 'perfmon' in
    the DSA (Data Streaming Accelerator) spec [1]), which supports the
    collection of information about key events occurring during DSA and
    IAX (Intel Analytics Accelerator) device execution, to assist in
    performance tuning and debugging.
    
    The idxd perfmon support is implemented as part of the IDXD driver and
    interfaces with the Linux perf framework.  It has several features in
    common with the existing uncore pmu support:
    
      - it does not support sampling
      - does not support per-thread counting
    
    However it also has some unique features not present in the core and
    uncore support:
    
      - all general-purpose counters are identical, thus no event constraints
      - operation is always system-wide
    
    While the core perf subsystem assumes that all counters are by default
    per-cpu, the uncore pmus are socket-scoped and use a cpu mask to
    restrict counting to one cpu from each socket.  IDXD counters use ...
    81dd4d4d
Kconfig 21.5 KB