OSDN Git Service

GEM: Avoid leaking refs on target objects on presumed offset success.
authorEric Anholt <eric@anholt.net>
Fri, 9 May 2008 22:02:50 +0000 (15:02 -0700)
committerEric Anholt <eric@anholt.net>
Fri, 9 May 2008 22:02:50 +0000 (15:02 -0700)
linux-core/i915_gem.c

index ff8e276..be30d6b 100644 (file)
@@ -640,8 +640,10 @@ i915_gem_reloc_and_validate_object(struct drm_gem_object *obj,
                /* If the relocation already has the right value in it, no
                 * more work needs to be done.
                 */
-               if (target_obj_priv->gtt_offset == reloc.presumed_offset)
+               if (target_obj_priv->gtt_offset == reloc.presumed_offset) {
+                       drm_gem_object_unreference(target_obj);
                        continue;
+               }
 
                /* Now that we're going to actually write some data in,
                 * make sure that any rendering using this buffer's contents