]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/pmu: Use PM timestamp instead of RING TIMESTAMP for reference
authorUmesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Tue, 11 Jan 2022 01:55:23 +0000 (17:55 -0800)
committerJohn Harrison <John.C.Harrison@Intel.com>
Wed, 26 Jan 2022 01:17:26 +0000 (17:17 -0800)
commit77281d123b6c0aa914ba23659a56e257b742df3c
tree6eaaefcc2bbf36ccfc476488a1a51abd4cb107a1
parentb9951130a251d42c5d6f3bb953f4b40ac2aacb9e
drm/i915/pmu: Use PM timestamp instead of RING TIMESTAMP for reference

All timestamps returned by GuC for GuC PMU busyness are captured from
GUC PM TIMESTAMP. Since this timestamp does not tick when GuC goes idle,
kmd uses RING_TIMESTAMP to measure busyness of an engine with an active
context. In further stress testing, the MMIO read of the RING_TIMESTAMP
is seen to cause a rare hang. Resolve the issue by using gt specific
timestamp from PM which is in sync with the GuC PM timestamp.

Fixes: e10bc7e8a7a5 ("drm/i915/pmu: Connect engine busyness stats from GuC to pmu")
Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Alan Previn <alan.previn.teres.alexis@intel.com>
Signed-off-by: John Harrison <John.C.Harrison@Intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220111015523.225562-1-umesh.nerlige.ramappa@intel.com
drivers/gpu/drm/i915/gt/uc/intel_guc.h
drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
drivers/gpu/drm/i915/i915_reg.h