Re: [PATCH 18/29] drm/i915: Use new bind/unbind in eviction code

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

 



On Wed, Aug 07, 2013 at 12:59:29AM +0200, Daniel Vetter wrote:
> On Wed, Aug 7, 2013 at 12:57 AM, Ben Widawsky <ben@xxxxxxxxxxxx> wrote:
> >> > We need evict_everything for #1. For #2, we call evict_something already
> >> > for the vm when we go through the out of space path. If that failed,
> >> > evicting everything for a specific VM is just the same operation. But
> >> > maybe I've glossed over something in the details. Please correct if I'm
> >> > wrong. Is there a case where evict something might fail with ENOSPC, and
> >> > evict everything in a VM would help?
> >>
> >> Yes, when we've terminally fragmented the gtt we kick out everything and
> >> start over. That's the 3rd usecase.
> >
> > I am not seeing it. To me evict_something is what you want, and the fix
> > for wherever the 3rd usecase is (please point it out, I'm dense) is it
> > should call evict_something, not evict_everything.
> 
> See the call to evict_everything in
> i915_gem_execbuffer.c:i915_gem_execbuffer_reserve
> 

As I was saying in the first response - you only hit this if
evict_something() for a vm fails, right? That's the way ret == ENOSPC
AFAICT.

-- 
Ben Widawsky, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://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