[PATCH v8 0/9] i915 PMU and engine busy stats

Tvrtko Ursulin
2017-10-20T09:24:48Z

Headline change is a workaround for a possible bug in CPU hotplug core where if
the multi-instance client (like i915) registers last (think i915 module reload),
the cpuhp core will the incorrently invoke all future hotplug callbacks, passing
in the i915 node to all other drivers. This obviously causes bad things to
happen.

Otherwise just some small rebasing was needed to catch up with either drm-tip,
or the cascase to previous patches.

Tvrtko Ursulin (9):
drm/i915: Extract intel_get_cagf
drm/i915/pmu: Expose a PMU interface for perf queries
drm/i915/pmu: Suspend sampling when GPU is idle
drm/i915: Wrap context schedule notification
drm/i915: Engine busy time tracking
drm/i915/pmu: Wire up engine busy stats to PMU
drm/i915/pmu: Add interrupt count metric
drm/i915: Convert intel_rc6_residency_us to ns
drm/i915/pmu: Add RC6 residency metrics

drivers/gpu/drm/i915/Makefile | 1 +
drivers/gpu/drm/i915/i915_debugfs.c | 9 +-
drivers/gpu/drm/i915/i915_drv.c | 3 +
drivers/gpu/drm/i915/i915_drv.h | 15 +-
drivers/gpu/drm/i915/i915_gem.c | 1 +
drivers/gpu/drm/i915/i915_gem_request.c | 1 +
drivers/gpu/drm/i915/i915_pmu.c | 898 ++++++++++++++++++++++++++++++++
drivers/gpu/drm/i915/i915_pmu.h | 112 ++++
drivers/gpu/drm/i915/i915_reg.h | 3 +
drivers/gpu/drm/i915/i915_sysfs.c | 20 +-
drivers/gpu/drm/i915/intel_engine_cs.c | 122 +++++
drivers/gpu/drm/i915/intel_lrc.c | 20 +-
drivers/gpu/drm/i915/intel_pm.c | 41 +-
drivers/gpu/drm/i915/intel_ringbuffer.h | 132 +++++
include/uapi/drm/i915_drm.h | 54 ++
15 files changed, 1397 insertions(+), 35 deletions(-)
create mode 100644 drivers/gpu/drm/i915/i915_pmu.c
create mode 100644 drivers/gpu/drm/i915/i915_pmu.h