[Intel-gfx] [PATCH 1/2] drm/i915: Serialise with remote retirement

Chris Wilson chris at chris-wilson.co.uk
Wed Nov 20 16:08:44 UTC 2019


Quoting Tvrtko Ursulin (2019-11-20 16:05:24)
> 
> On 20/11/2019 15:21, Chris Wilson wrote:
> > Since retirement may be running in a worker on another CPU, it may be
> > skipped in the local intel_gt_wait_for_idle(). To ensure the state is
> > consistent for our sanity checks upon load, serialise with the remote
> > retirer by waiting on the timeline->mutex.
> 
> What may get skipped? Timeline might have been removed from the active 
> list before wait_for_idle? But why would that be bad for this code? It 
> just splits part of the retirement to two paths - wait_for_idle still... 
> oops wait.. indeed.. wait_for_idle used to guarantee retirement and now 
> it can be ongoing. Does wait_for_idle needs to always wait or you think 
> case-by-case basis is better?

My thought was case-by-case, as intel_gt_pm_wait_for_idle() picks up the
slack for when we truly need it. Here, my intent was to avoid waiting
longer than was strictly necessarily.

I probably should have mentioned that as the standby.
-Chris


More information about the Intel-gfx mailing list