summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_engine_cs.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2016-09-09 14:11:52 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2016-09-09 14:23:04 +0100
commit780f262a703a683bc56bbb860b25286a6f501d61 (patch)
treec31bdc885b028ae07757331ceebbcb3ebcc823b3 /drivers/gpu/drm/i915/intel_engine_cs.c
parent221fe7994554cc3985fc5d761ed7e44dcae0fa52 (diff)
downloadtalos-obmc-linux-780f262a703a683bc56bbb860b25286a6f501d61.tar.gz
talos-obmc-linux-780f262a703a683bc56bbb860b25286a6f501d61.zip
drm/i915: Replace wait-on-mutex with wait-on-bit in reset worker
Since we have a cooperative mode now with a direct reset, we can avoid the contention on struct_mutex and instead try then sleep on the I915_RESET_IN_PROGRESS bit. If the mutex is held and that bit is cleared, all is fine. Otherwise, we sleep for a bit and try again. In the worst case we sleep for an extra second waiting for the mutex to be released (no one touching the GPU is allowed the struct_mutex whilst the I915_RESET_IN_PROGRESS bit is set). But when we have a direct reset, this allows us to clean up the reset worker faster. v2: Remember to call wake_up_bit() after changing (for the faster wakeup as promised) Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/20160909131201.16673-12-chris@chris-wilson.co.uk
Diffstat (limited to 'drivers/gpu/drm/i915/intel_engine_cs.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud