[Intel-gfx] [PATCH 01/17] drm/i915/execlists: Always clear pending&inflight requests on reset

Chris Wilson chris at chris-wilson.co.uk
Thu Aug 1 08:13:27 UTC 2019


Quoting Andi Shyti (2019-08-01 09:08:11)
> Hi Chris,
> 
> > If we skip the reset as we found the engine inactive at the time of the
> > reset, we still need to clear the residual inflight & pending request
> > bookkeeping to reflect the current state of HW.
> 
> [...]
> 
> > Where not having cleared the pending array on reset, it persists
> > indefinitely.
> 
> des this fix Bug 111144(*)?

It shouldn't, since the stall is not on the engine that is being reset.

> > -     /*
> > -      * Catch up with any missed context-switch interrupts.
> > -      *
> > -      * Ideally we would just read the remaining CSB entries now that we
> > -      * know the gpu is idle. However, the CSB registers are sometimes^W
> > -      * often trashed across a GPU reset! Instead we have to rely on
> > -      * guessing the missed context-switch events by looking at what
> > -      * requests were completed.
> > -      */
> > -     execlists_cancel_port_requests(execlists);
> > -
> 
> why did this end up here in a first place?

History, that's where it started, then code got rearranged around it.
-Chris


More information about the Intel-gfx mailing list