[Intel-gfx] [PATCH] drm/i915: Undo gtt scratch pte unmapping again
Takashi Iwai
tiwai at suse.de
Thu Mar 27 14:18:40 CET 2014
At Thu, 27 Mar 2014 07:41:41 +0100,
Takashi Iwai wrote:
>
> At Wed, 26 Mar 2014 20:10:09 +0100,
> Daniel Vetter wrote:
> >
> > It apparently blows up on some machines. This functionally reverts
> >
> > commit 828c79087cec61eaf4c76bb32c222fbe35ac3930
> > Author: Ben Widawsky <benjamin.widawsky at intel.com>
> > Date: Wed Oct 16 09:21:30 2013 -0700
> >
> > drm/i915: Disable GGTT PTEs on GEN6+ suspend
> >
> > Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=64841
> > Reported-and-Tested-by: Brad Jackson <bjackson0971 at gmail.com>
> > Cc: stable at vger.kernel.org
> > Cc: Takashi Iwai <tiwai at suse.de>
> > Cc: Paulo Zanoni <paulo.r.zanoni at intel.com>
> > Cc: Todd Previte <tprevite at gmail.com>
> > Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
>
> The commit was the fix for the memory corruption and lock up at S4 on
> some (Haswell) machines. This revert will re-introduce the issue
> again very likely. I'm going to check with the latest tree, but this
> may take some time.
Luckily I found the machine quickly and tested with your patch.
As expected, this revert breaks S4 again on Haswell machines indeed.
A test machine locks up after 4 times S4 cycle while 3.14-rc8 keeps
working after 100 S4 cycles. Oh well.
Takashi
>
> Wouldn't it be safer to revert this conditionally like I suggested in
> comment 10 of the bugzilla entry?
>
> --- a/drivers/gpu/drm/i915/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
> @@ -818,7 +818,7 @@ void i915_gem_suspend_gtt_mappings(struct
> drm_device *dev)
> /* Don't bother messing with faults pre GEN6 as we have little
> * documentation supporting that it's a good idea.
> */
> - if (INTEL_INFO(dev)->gen < 6)
> + if (INTEL_INFO(dev)->gen < 7)
> return;
>
> i915_check_and_clear_faults(dev);
>
> thanks,
>
> Takashi
>
>
> > ---
> > drivers/gpu/drm/i915/i915_gem_gtt.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
> > index 5d61de18ae55..4467974eb53b 100644
> > --- a/drivers/gpu/drm/i915/i915_gem_gtt.c
> > +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
> > @@ -1281,7 +1281,7 @@ void i915_gem_suspend_gtt_mappings(struct drm_device *dev)
> > dev_priv->gtt.base.clear_range(&dev_priv->gtt.base,
> > dev_priv->gtt.base.start,
> > dev_priv->gtt.base.total,
> > - false);
> > + true);
> > }
> >
> > void i915_gem_restore_gtt_mappings(struct drm_device *dev)
> > --
> > 1.8.5.2
> >
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
More information about the Intel-gfx
mailing list