[Intel-gfx] [PATCH 06/19] drm/i915: Enable i915_gem_wait_for_idle() without holding struct_mutex

Chris Wilson chris at chris-wilson.co.uk
Fri Aug 5 06:51:07 UTC 2016


On Fri, Aug 05, 2016 at 09:16:21AM +0300, Joonas Lahtinen wrote:
> On to, 2016-08-04 at 20:52 +0100, Chris Wilson wrote:
> > @@ -486,7 +486,8 @@ void __i915_add_request(struct drm_i915_gem_request *request,
> >  	 */
> >  	request->emitted_jiffies = jiffies;
> >  	request->previous_seqno = engine->last_submitted_seqno;
> > -	smp_store_mb(engine->last_submitted_seqno, request->fence.seqno);
> > +	engine->last_submitted_seqno = request->fence.seqno;
> 
> What's up with this change?

Where we use to use an ordered store of the last seqno for checking
idleness inside hangcheck, we now use the RCU active tracking instead.

engine->last_submitted_seqno is reduced to a heuristic used for debug
(gpu error state) and for deciding when to grant a fresh waitboost.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list