summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/i915_gem_userptr.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2017-06-16 15:05:21 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2017-06-16 16:54:05 +0100
commit616d9cee4fdc4a377c03be8fd6efa5df4fcd0d81 (patch)
tree135f82d1858eec3f40701bc5f5dd48d7ac756684 /drivers/gpu/drm/i915/i915_gem_userptr.c
parentdade2a6165fd7bd825958e9b0ad04678f53f0f60 (diff)
drm/i915: First try the previous execbuffer location
When choosing a slot for an execbuffer, we ideally want to use the same address as last time (so that we don't have to rebind it) and the same address as expected by the user (so that we don't have to fixup any relocations pointing to it). If we first try to bind the incoming execbuffer->offset from the user, or the currently bound offset that should hopefully achieve the goal of avoiding the rebind cost and the relocation penalty. However, if the object is not currently bound there we don't want to arbitrarily unbind an object in our chosen position and so choose to rebind/relocate the incoming object instead. After we report the new position back to the user, on the next pass the relocations should have settled down. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Joonas Lahtinen <joonas.lahtien@linux.intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gem_userptr.c')
0 files changed, 0 insertions, 0 deletions