On ke, 2017-05-31 at 20:05 +0100, Chris Wilson wrote: > Commit 7c3f86b6dc51 ("drm/i915: Invalidate the guc ggtt TLB upon > insertion") added the restoration of the invalidation routine after the > GuC was disabled, but missed that the GuC was unconditionally disabled > when not used. This then overwrites the invalidate routine for the older > chipsets, causing havoc and breaking resume as the most obvious victim. > > We place the guard inside i915_ggtt_disable_guc() to be backport > friendly (the bug was introduced into v4.11) but it would be preferred > to be in more control over when this was guard (i.e. do not try and > teardown the data structures before we have enabled them). That should > be true with the reorganisation of the guc loaders. > > Reported-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > Fixes: 7c3f86b6dc51 ("drm/i915: Invalidate the guc ggtt TLB upon insertion") > Cc: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxxxxxxxx> > Cc: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx> > Cc: Oscar Mateo <oscar.mateo@xxxxxxxxx> > Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@xxxxxxxxx> > Cc: Michal Wajdeczko <michal.wajdeczko@xxxxxxxxx> > Cc: Arkadiusz Hiler <arkadiusz.hiler@xxxxxxxxx> > Cc: <stable@xxxxxxxxxxxxxxx> # v4.11+ Reviewed-by: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx> Regards, Joonas -- Joonas Lahtinen Open Source Technology Center Intel Corporation