Skip to content

Commit c524cd4

Browse files
unerligerodrigovivi
authored andcommitted
i915/pmu: Move execlist stats initialization to execlist specific setup
engine->stats is a union of execlist and guc stat objects. When execlist specific fields are initialized, the initial state of guc stats is affected. This results in bad busyness values when using GuC mode. Move the execlist initialization from common code to execlist specific code. Fixes: 77cdd05 ("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> Link: https://patchwork.freedesktop.org/patch/msgid/20230912212247.1828681-1-umesh.nerlige.ramappa@intel.com (cherry picked from commit 4485bd5) Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
1 parent f17cc0f commit c524cd4

File tree

2 files changed

+2
-1
lines changed

2 files changed

+2
-1
lines changed

drivers/gpu/drm/i915/gt/intel_engine_cs.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -558,7 +558,6 @@ static int intel_engine_setup(struct intel_gt *gt, enum intel_engine_id id,
558558
DRIVER_CAPS(i915)->has_logical_contexts = true;
559559

560560
ewma__engine_latency_init(&engine->latency);
561-
seqcount_init(&engine->stats.execlists.lock);
562561

563562
ATOMIC_INIT_NOTIFIER_HEAD(&engine->context_status_notifier);
564563

drivers/gpu/drm/i915/gt/intel_execlists_submission.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3550,6 +3550,8 @@ int intel_execlists_submission_setup(struct intel_engine_cs *engine)
35503550
logical_ring_default_vfuncs(engine);
35513551
logical_ring_default_irqs(engine);
35523552

3553+
seqcount_init(&engine->stats.execlists.lock);
3554+
35533555
if (engine->flags & I915_ENGINE_HAS_RCS_REG_STATE)
35543556
rcs_submission_override(engine);
35553557

0 commit comments

Comments
 (0)