[Intel-gfx] [PATCH] drm/i915: avoid false fence signaling when enabling preemption
chris at chris-wilson.co.uk
Mon Mar 12 10:44:38 UTC 2018
Quoting Chris Wilson (2018-03-12 10:42:56)
> Quoting Min He (2018-03-12 06:17:10)
> > In i915_request_wait(), it adds a local intel_wait variable into rb tree
> > of waiters. However, when the corresponding request is preempted, the
> > seqno of this wait will not be updated, which will lead to a false
> > signaling to the request and cause the i915_request_wait() to return
> > early before the request is really completed.
> Incorrect. We confirm that the request wasn't preempted before
> signaling. Once i915_seqno_passed + intel_wait_check_request, we cannot
> unsubmit the request.
Or to put it another way, there is an assertion there that would fire if
we make a mistake; you should cite that oops in the commit message.
More information about the Intel-gfx