drm/i915: Assert all sg are initialised in fake_dma_object for selftests
authorChris Wilson <chris@chris-wilson.co.uk>
Sat, 25 Feb 2017 18:11:19 +0000 (18:11 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Sat, 25 Feb 2017 18:54:36 +0000 (18:54 +0000)
Double check that we allocated the right amount of scatterlist elements
for our obj->size.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Matthew Auld <matthew.william.auld@gmail.com>
Reviewed-by: Matthew Auld <matthew.william.auld@gmail.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170225181122.4788-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/selftests/i915_gem_gtt.c

index 6bac267..0f3fa34 100644 (file)
@@ -62,12 +62,14 @@ fake_get_pages(struct drm_i915_gem_object *obj)
        for (sg = pages->sgl; sg; sg = sg_next(sg)) {
                unsigned long len = min_t(typeof(rem), rem, BIT(31));
 
+               GEM_BUG_ON(!len);
                sg_set_page(sg, pfn_to_page(PFN_BIAS), len, 0);
                sg_dma_address(sg) = page_to_phys(sg_page(sg));
                sg_dma_len(sg) = len;
 
                rem -= len;
        }
+       GEM_BUG_ON(rem);
 
        obj->mm.madv = I915_MADV_DONTNEED;
        return pages;