drm/i915: Avoid using mappable space for relocation processing through the CPU
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 26 Mar 2012 08:10:27 +0000 (10:10 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 27 Mar 2012 11:16:17 +0000 (13:16 +0200)
commitdabdfe021ab1e985e6566009c774fb03f14b568e
tree12372e0f40a428cef1e86f02886b978d37fc30af
parentd1dd20a96524ac462ed4f28dae168b9637f079e5
drm/i915: Avoid using mappable space for relocation processing through the CPU

We try to avoid writing the relocations through the uncached GTT, if the
buffer is currently in the CPU write domain and so will be flushed out to
main memory afterwards anyway. Also on SandyBridge we can safely write
to the pages in cacheable memory, so long as the buffer is LLC mapped.
In either of these cases, we therefore do not need to force the
reallocation of the buffer into the mappable region of the GTT, reducing
the aperture pressure.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/i915_gem.c
drivers/gpu/drm/i915/i915_gem_execbuffer.c