drm/i915: Add some sanity checks to unbound tracking
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 20 Aug 2012 09:23:27 +0000 (10:23 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 21 Aug 2012 12:34:20 +0000 (14:34 +0200)
A pair of universally true checks that just need to be put in the right
place depending on where in the patch sequence you go. Note that
i915_gem_object_put_pages_gtt() already gains the
BUG_ON(obj->gtt_space), but on reflection that needed to migrate to
put_pages().

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_gem.c

index 462a8f2ad3a200be2822662e7bece791f50102d3..a549be5f535bbae674ecfbec996cf6f0fe68100b 100644 (file)
@@ -1378,6 +1378,8 @@ i915_gem_object_put_pages_gtt(struct drm_i915_gem_object *obj)
        int page_count = obj->base.size / PAGE_SIZE;
        int ret, i;
 
+       BUG_ON(obj->gtt_space);
+
        if (obj->pages == NULL)
                return 0;
 
@@ -2293,6 +2295,8 @@ i915_gem_object_unbind(struct drm_i915_gem_object *obj)
        if (obj->pin_count)
                return -EBUSY;
 
+       BUG_ON(obj->pages == NULL);
+
        ret = i915_gem_object_finish_gpu(obj);
        if (ret)
                return ret;