[Intel-gfx] [PATCH v3 3/8] drm/i915: Add a new "remapped" gtt_view

Chris Wilson chris at chris-wilson.co.uk
Mon Oct 1 15:37:36 UTC 2018


Quoting Ville Syrjälä (2018-10-01 16:27:43)
> On Mon, Oct 01, 2018 at 04:12:09PM +0100, Chris Wilson wrote:
> > Quoting Ville Syrjälä (2018-10-01 16:03:30)
> > > On Wed, Sep 26, 2018 at 08:50:25AM +0100, Tvrtko Ursulin wrote:
> > > > 
> > > > On 25/09/2018 20:37, Ville Syrjala wrote:
> > > > One more thing, do you really need random access for this 
> > > > transformation? Or you could walk the sg list as it is? Just if you hit 
> > > > a too long chunk you need to copy a trimmed version over and know where 
> > > > to continue for the next row. If doable it would be better than having 
> > > > to kvmalloc_array.
> > > 
> > > I think Chris suggested just using i915_gem_object_get_dma_address()
> > > here. But I'm not sure why we're not using it for rotate_pages()
> > > as well.
> > 
> > Tvrtko is opposed to populating the obj->mm.pages cache with no defined
> > release point. I say the mempressure and shrinker should to the right
> > thing, but it's a big if.
> 
> OK.
> 
> Well, looks to me like i915_gem_object_get_dma_address() is the
> only convenient looking thing for iterating the pages without
> arowning the code in irrelevant details about sgs and whatnot.
> I suppose it should be possible to write some helpers that avoid
> all that and don't need the temp array, but I'm not really
> motivated enough to do that myself.

Keep it simple and use get_dma_address(). We can find ways to throw away
the cache later if need be.
-Chris


More information about the Intel-gfx mailing list