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. -- Ville Syrjälä Intel _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx