[Intel-gfx] [PATCH] drm/i915: Restore all GGTT VMAs on resume

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Mon Jul 6 08:29:12 PDT 2015


On 07/06/2015 04:19 PM, Chris Wilson wrote:
> On Mon, Jul 06, 2015 at 03:15:01PM +0100, Tvrtko Ursulin wrote:
>> From: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
>>
>> When rotated and partial views were added no one spotted the resume
>> path which assumes only one GGTT VMA per object and hence is now
>> skipping rebind of alternative views.
>>
>> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
>> Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
>> Cc: Chris Wilson <chris at chris-wilson.co.uk>
>> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
>> ---
>> Similarly to my recent debugfs patch, it would seem quicker path could
>> be to walk GGTT active & inactive lists, but I assume we want to call
>> i915_gem_clflush_object only once per object which would make that
>> problematic.
>
> It's a bit easier because there are no active entries after suspend, and
> we may not care too much for over clflushing.
>
> We should actually clear the GGTT of all but pinned entries on
> hibernate (which would save a bunch of work on early resume), and there
> are a bunch of non-objects inside the GGTT that should be evicted/restored
> properly. (Would have been trivial had we made them all objects in the
> first place.)

What are these non-objects and where do I find the code with restores 
them improperly?

> The patch is in the right direction and the other issues are present
> irrespective of this patch.
>
> I guess a begrudingly
> Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>

Thanks!

Regards,

Tvrtko


More information about the Intel-gfx mailing list