mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-03-22 07:27:12 +08:00
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: 77cdd054dd ("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
This commit is contained in:
@@ -558,7 +558,6 @@ static int intel_engine_setup(struct intel_gt *gt, enum intel_engine_id id,
|
||||
DRIVER_CAPS(i915)->has_logical_contexts = true;
|
||||
|
||||
ewma__engine_latency_init(&engine->latency);
|
||||
seqcount_init(&engine->stats.execlists.lock);
|
||||
|
||||
ATOMIC_INIT_NOTIFIER_HEAD(&engine->context_status_notifier);
|
||||
|
||||
|
||||
@@ -3548,6 +3548,8 @@ int intel_execlists_submission_setup(struct intel_engine_cs *engine)
|
||||
logical_ring_default_vfuncs(engine);
|
||||
logical_ring_default_irqs(engine);
|
||||
|
||||
seqcount_init(&engine->stats.execlists.lock);
|
||||
|
||||
if (engine->flags & I915_ENGINE_HAS_RCS_REG_STATE)
|
||||
rcs_submission_override(engine);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user