Re: [PATCH v2] drm/i915: Fix fallout of fake reset along resume

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Quoting Joonas Lahtinen (2018-06-18 10:10:15)
> Quoting Chris Wilson (2018-06-16 23:25:34)
> > commit b2209e62a450 ("drm/i915/execlists: Reset the CSB head tracking on
> > reset/sanitization") and commit 1288786b18f7 ("drm/i915: Move GEM sanitize
> > from resume_early to resume") show the conflicting requirements on the
> > code. We must reset the GPU before trashing live state on a fast resume
> > (hibernation debug, or error paths), but we must only reset our state
> > tracking iff the GPU is reset (or power cycled). This is tricky if we
> > are disabling GPU reset to simulate broken hardware; we reset our state
> > tracking but the GPU is left intact and recovers from its stale state.
> > 
> > v2: Again without the assertion for forcewake, no longer required since
> > commit b3ee09a4de33 ("drm/i915/ringbuffer: Fix context restore upon reset")
> > as the contexts are reset from the CS ensuring everything is powered up.
> > 
> > Fixes: b2209e62a450 ("drm/i915/execlists: Reset the CSB head tracking on reset/sanitization")
> > Fixes: 1288786b18f7 ("drm/i915: Move GEM sanitize from resume_early to resume")
> > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
> > Cc: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx>
> > Cc: Mika Kuoppala <mika.kuoppala@xxxxxxxxxxxxxxx>
> > Cc: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx>
> 
> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx>

Sorry for causing the mess in the first place (I had a nagging doubt
that there was a conflict, but assumed after a quick look at gem_eio we
wouldn't actually hit a warning).

Pushed,
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux