[Intel-gfx] [PATCH 2/2] drm/i915: Pass the set of guilty engines to i915_reset()

Chris Wilson chris at chris-wilson.co.uk
Fri Apr 6 22:42:48 UTC 2018


Quoting Michel Thierry (2018-04-06 23:35:43)
> On 4/6/2018 3:03 PM, Chris Wilson wrote:
> > -static u32 fake_hangcheck(struct i915_request *rq)
> > +static u32 fake_hangcheck(struct i915_request *rq, u32 mask)
> >   {
> > -     u32 reset_count;
> > +     struct i915_gpu_error *error = &rq->i915->gpu_error;
> > +     u32 reset_count = i915_reset_count(error);
> >   
> > -     rq->engine->hangcheck.stalled = true;
> > -     rq->engine->hangcheck.seqno = intel_engine_get_seqno(rq->engine);
> > +     error->stalled_mask = mask;
> >   
> > -     reset_count = i915_reset_count(&rq->i915->gpu_error);
> > +     smp_mb__before_atomic();
> checkpatch is going to complain about the lack of comment

checkpatch is seeing mb where there is only a barrier(). ;)
/* No really, set_bit must be after setting stalled_mask */

The other side is handled via wake_up_all() being a full barrier between
us and the other process.
-Chris


More information about the Intel-gfx mailing list