[Intel-gfx] [PATCH] drm/i915/execlists: Skip lite restore on the currently executing request
Chris Wilson
chris at chris-wilson.co.uk
Wed Apr 25 13:14:13 UTC 2018
Quoting Chris Wilson (2018-04-25 13:45:45)
> Quoting Chris Wilson (2018-04-25 12:31:29)
> > Quoting Chris Wilson (2018-04-25 12:23:30)
> > > Quoting Mika Kuoppala (2018-04-25 12:19:08)
> > > > Did you try with WA_TAIL_DWORDS 16?
> > >
> > > Sure can try, but the error state doesn't indicate TAIL==HEAD as would
> > > be the issue with WaIdleLiteRestore (restoring to an idle ring wouldn't
> > > generate the arbitration event, so no more context switches).
> >
> > Watch https://patchwork.freedesktop.org/series/42284/
> >
> > Actually surviving on my bdw
>
> And what appears to work just as well is
>
> @@ -1387,7 +1387,7 @@ static int execlists_request_alloc(struct i915_request *request)
> */
> request->reserved_space += EXECLISTS_REQUEST_SIZE;
>
> - ret = intel_ring_wait_for_space(request->ring, request->reserved_space);
> + ret = intel_ring_cacheline_align(request);
> if (ret)
> return ret;
>
> If that doesn't hint towards some weirdness in HW, I don't know what
> would ;)
Fwiw, I've now hit GPU hangs with WA_TAIL_DWORDS set to 16 and with the
cacheline_align; scratch that theory.
-Chris
More information about the Intel-gfx
mailing list