]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Complete requests in nop_submit_request
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 22 Nov 2016 14:41:20 +0000 (14:41 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 22 Nov 2016 17:42:18 +0000 (17:42 +0000)
commit831859721e80b2c7363be77951e7b724d29f73f3
treeb27009bdbaed87f6900f8385115063f1939e3e4e
parenteeee7f91fa7959f751cb6aee6529f480366f8890
drm/i915: Complete requests in nop_submit_request

Since the submit/execute split in commit aef9953b9669 ("drm/i915: Defer
transfer onto execution timeline to actual hw submission") the
global seqno advance was deferred until the submit_request callback.
After wedging the GPU, we were installing a nop_submit_request handler
(to avoid waking up the dead hw) but I had missed converting this over
to the new scheme. Under the new scheme, we have to explicitly call
i915_gem_submit_request() from the submit_request handler to mark the
request as on the hardware. If we don't the request is always pending,
and any waiter will continue to wait indefinitely and hangcheck will not
be able to resolve the lockup.

References: https://bugs.freedesktop.org/show_bug.cgi?id=98748
Testcase: igt/gem_eio/in-flight
Fixes: aef9953b9669 ("drm/i915: Defer transfer onto execution timeline to actual hw submission")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20161122144121.7379-3-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_gem.c