aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2010-02-19 05:52:01 -0500
committerEric Anholt <eric@anholt.net>2010-02-26 16:23:22 -0500
commit922a2efc1b6ef48e2783f7efeb3a94e952c7ed14 (patch)
tree68cc2a5ee7029fa49cc8b9cccb57ea00003196b5 /drivers/gpu/drm
parent4df2faf4512c2e2ffa6793e055c73a4e7b8b5e36 (diff)
drm/i915: clean-up i915_gem_flush_gpu_write_domain
Now that we have an exact gpu write domain tracking, we don't need to move objects to the active list ourself. i915_add_request will take care of that under all circumstances. Idea stolen from a patch by Chris Wilson <chris@chris-wilson.co.uk>. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r--drivers/gpu/drm/i915/i915_gem.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 2571d1f543ef..6fe54db8f33c 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -2748,7 +2748,6 @@ static void
2748i915_gem_object_flush_gpu_write_domain(struct drm_gem_object *obj) 2748i915_gem_object_flush_gpu_write_domain(struct drm_gem_object *obj)
2749{ 2749{
2750 struct drm_device *dev = obj->dev; 2750 struct drm_device *dev = obj->dev;
2751 uint32_t seqno;
2752 uint32_t old_write_domain; 2751 uint32_t old_write_domain;
2753 2752
2754 if ((obj->write_domain & I915_GEM_GPU_DOMAINS) == 0) 2753 if ((obj->write_domain & I915_GEM_GPU_DOMAINS) == 0)
@@ -2757,9 +2756,8 @@ i915_gem_object_flush_gpu_write_domain(struct drm_gem_object *obj)
2757 /* Queue the GPU write cache flushing we need. */ 2756 /* Queue the GPU write cache flushing we need. */
2758 old_write_domain = obj->write_domain; 2757 old_write_domain = obj->write_domain;
2759 i915_gem_flush(dev, 0, obj->write_domain); 2758 i915_gem_flush(dev, 0, obj->write_domain);
2760 seqno = i915_add_request(dev, NULL, obj->write_domain); 2759 (void) i915_add_request(dev, NULL, obj->write_domain);
2761 BUG_ON(obj->write_domain); 2760 BUG_ON(obj->write_domain);
2762 i915_gem_object_move_to_active(obj, seqno);
2763 2761
2764 trace_i915_gem_object_change_domain(obj, 2762 trace_i915_gem_object_change_domain(obj,
2765 obj->read_domains, 2763 obj->read_domains,