]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/gt: execlists->active is serialised by the tasklet
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 9 Oct 2019 16:09:06 +0000 (17:09 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 9 Oct 2019 18:54:46 +0000 (19:54 +0100)
commit7ade093fbb14f23d1e28e6c26929d10c932e0862
tree2b0ac4203a72b14e92c8f984dfb315a051b6f575
parent1d31761a2bfa4fd940a62f042b05d2a201f27e17
drm/i915/gt: execlists->active is serialised by the tasklet

The active/pending execlists is no longer protected by the
engine->active.lock, but is serialised by the tasklet instead. Update
the locking around the debug and stats to follow suit.

v2: local_bh_disable() to prevent recursing into the tasklet in case we
trigger a softirq (Tvrtko)

Fixes: 4a24537b5914 ("drm/i915/execlists: Lift process_csb() out of the irq-off spinlock")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191009160906.16195-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gt/intel_engine.h
drivers/gpu/drm/i915/gt/intel_engine_cs.c
drivers/gpu/drm/i915/i915_gem.h