Re: [PATCH 1/1] drm/i915: Move i915_gem_suspend_gtt_mappings to i915_gem_suspend

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

 



Quoting Sagar Arun Kamble (2017-10-05 19:17:46)
> 
> 
> On 10/5/2017 11:41 PM, Chris Wilson wrote:
> > Quoting Sagar Arun Kamble (2017-10-05 19:07:37)
> >> suspend_gtt_mappings was happening post i915_gem_suspend where
> >> GPU is reset in the end. Call it before i915_gem_sanitize.
> >> This also makes portion of i915_gem_suspend symmetrical to
> >> i915_gem_resume and will facilitate proper ordering of GuC resume
> >> where ggtt.invalidate gets updated.
> >>
> >> Signed-off-by: Sagar Arun Kamble <sagar.a.kamble@xxxxxxxxx>
> >> Cc: Michal Wajdeczko <michal.wajdeczko@xxxxxxxxx>
> >> Cc: Michał Winiarski <michal.winiarski@xxxxxxxxx>
> >> Cc: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
> >> Cc: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx>
> >> ---
> >>   drivers/gpu/drm/i915/i915_drv.c | 2 --
> >>   drivers/gpu/drm/i915/i915_gem.c | 2 ++
> >>   2 files changed, 2 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> >> index 66fc156..05c71a9 100644
> >> --- a/drivers/gpu/drm/i915/i915_drv.c
> >> +++ b/drivers/gpu/drm/i915/i915_drv.c
> >> @@ -1558,8 +1558,6 @@ static int i915_drm_suspend(struct drm_device *dev)
> >>   
> >>          intel_suspend_hw(dev_priv);
> >>   
> >> -       i915_gem_suspend_gtt_mappings(dev_priv);
> >> -
> >>          i915_save_state(dev_priv);
> >>   
> >>          opregion_target_state = suspend_to_idle(dev_priv) ? PCI_D1 : PCI_D3cold;
> >> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> >> index ab8c694..4abd6fd 100644
> >> --- a/drivers/gpu/drm/i915/i915_gem.c
> >> +++ b/drivers/gpu/drm/i915/i915_gem.c
> >> @@ -4557,6 +4557,8 @@ int i915_gem_suspend(struct drm_i915_private *dev_priv)
> >>          if (WARN_ON(!intel_engines_are_idle(dev_priv)))
> >>                  i915_gem_set_wedged(dev_priv); /* no hope, discard everything */
> >>   
> >> +       i915_gem_suspend_gtt_mappings(dev_priv);
> > Hmm. suspend_gtt_mappings zaps the GGTT. We shouldn't do that before we
> > shutdown the display. Maybe we need to move the i915_gem_sanitize instead?
> > -Chris
> Any particular reason gem_suspend is being done prior to display 
> suspend? ...

It grew from idling the GPU as the first action - which makes sure that
user updates to the screen stop etc.

> if we could change that order current gem_suspend (i915_gem_suspend post 
> intel_suspend*) with this fix should be fine ...
> Else will have to call gem_sanitize separately.

I guess we are looking at splitting gem_suspend into the user quiescing
section and the hw cleanup.
-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