aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_drv.h
diff options
context:
space:
mode:
authorBen Widawsky <benjamin.widawsky@intel.com>2013-09-11 17:57:50 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-09-12 15:58:22 -0400
commit68c8c17f527effba57f4e82efee18a249c6a1b58 (patch)
treea05723acd6d127cbe0a10815775821eb4746582b /drivers/gpu/drm/i915/i915_drv.h
parent7b7961220f1426aa795a3ded3404470b1c5749b6 (diff)
drm/i915: evict VM instead of everything
When reserving objects during execbuf, it is possible to come across an object which will not fit given the current fragmentation of the address space. We do not have any defragment in drm_mm, so the strategy is to instead evict everything, and reallocate objects. With the upcoming addition of multiple VMs, there is no point to evict everything since doing so is overkill for the specific case mentioned above. Recommended-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Ben Widawsky <ben@bwidawsk.net> [danvet: One additional s/evict_everything/evict_vm/ to update a comment in the code.] Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_drv.h')
-rw-r--r--drivers/gpu/drm/i915/i915_drv.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 81ba5bbc97fa..7caf71d52abe 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -2106,6 +2106,7 @@ int __must_check i915_gem_evict_something(struct drm_device *dev,
2106 unsigned cache_level, 2106 unsigned cache_level,
2107 bool mappable, 2107 bool mappable,
2108 bool nonblock); 2108 bool nonblock);
2109int i915_gem_evict_vm(struct i915_address_space *vm, bool do_idle);
2109int i915_gem_evict_everything(struct drm_device *dev); 2110int i915_gem_evict_everything(struct drm_device *dev);
2110 2111
2111/* i915_gem_stolen.c */ 2112/* i915_gem_stolen.c */