OSDN Git Service

drm/i915/gt: Fix hold/unhold recursion
authorChris Wilson <chris@chris-wilson.co.uk>
Sun, 9 Feb 2020 13:19:15 +0000 (13:19 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Sun, 9 Feb 2020 13:46:40 +0000 (13:46 +0000)
commit26208d876d372566264bb8be76beeb0bbbcdead8
treeb3c223c674ec113ffb40784b63008065cbe1df24
parent48d7fb181a9102e4936700367db8d5a04bb12c2c
drm/i915/gt: Fix hold/unhold recursion

In eliminating the recursion from walking the tree of signalers/waiters
for processing the hold/unhold operations, a crucial error crept in
where we looked at the parent request and not the list element when
processing the list.

Brown paper bag, much?

Closes: https://gitlab.freedesktop.org/drm/intel/issues/1166
Fixes: 32ff621fd744 ("drm/i915/gt: Allow temporary suspension of inflight requests")
Fixes: 748317386afb ("drm/i915/execlists: Offline error capture")
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: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200209131922.180287-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gt/intel_lrc.c