[Intel-gfx] [PATCH 13/13] drm/i915: Compress GPU objects in error state

Daniel Vetter daniel at ffwll.ch
Fri Aug 5 19:58:49 UTC 2016


On Fri, Aug 05, 2016 at 08:15:42PM +0100, Chris Wilson wrote:
> On Fri, Aug 05, 2016 at 08:56:57PM +0200, Daniel Vetter wrote:
> > On Fri, Aug 05, 2016 at 10:06:04AM +0100, Chris Wilson wrote:
> > > Our error states are quickly growing, pinning kernel memory with them.
> > > The majority of the space is taken up by the error objects. These
> > > compress well using zlib and without decode are mostly meaningless, so
> > > encoding them does not hinder quickly parsing the error state for
> > > familiarity.
> > > 
> > > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> > 
> > Seems to also contain a wholesale rework of the capture logic using a ggtt
> > mappable entry. Would explain why the missing clflush isn't an issue for
> > you.
> 
> No. clflush was replaced by wbinvd, which is dropped here because it is
> no longer required.

Indeed, I missed that, makes all sense. Still should be split up I think
since it's quite a bit a change.

> > Imo best if that part is reordered as the first patch (or at least
> > before stop_machine, which requires the removal of cflush), and then the
> > zlib on top.
> > 
> > On the idea itself, since I have no clue: How do we uncompress these
> > again? Patched intel_error_decode, or can zlib deal with in-line streams?
> 
> intel_error_decode was updated to handle the compressed streams.
> 
> commit d4c3cd4d04ab7f317d3429708d19cd5fc4d0f5fa
> Author:     Chris Wilson <chris at chris-wilson.co.uk>
> AuthorDate: Fri Oct 31 11:27:21 2014 +0000
> Commit:     Chris Wilson <chris at chris-wilson.co.uk>
> CommitDate: Thu Dec 31 22:10:11 2015 +0000
> 
>     intel_error_decode: Inflate compressed error state

Oh, entirely missed that too ;-) Still would be good to add that to the
commit message.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the Intel-gfx mailing list