]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm/i915/gtt: Fix unwind length passed to gen6_ppgtt_clear_range
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 8 Jun 2018 17:32:21 +0000 (18:32 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 8 Jun 2018 18:29:24 +0000 (19:29 +0100)
When we want to unwind an error when allocating the PD for gen6, we call
gen6_ppgtt_clear_range() telling to clear upto the PD we've previously
allocated. However, we passed it an incorrect length, passing it the
endpoint instead. Fortunately, as the start was always 0, this has no
impact today, but tomorrow we want to start using non-zero origins.

Reported-by: Matthew Auld <matthew.william.auld@gmail.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Cc: Matthew Auld <matthew.william.auld@gmail.com>
Reviewed-by: Matthew Auld <matthew.william.auld@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180608173221.10455-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_gem_gtt.c

index 912d6c4ba336a82dd5f8bddba23b08fa6a3ce7d8..ae3b24095d046dc834f5864cc8508d332138b615 100644 (file)
@@ -1931,7 +1931,7 @@ static int gen6_alloc_va_range(struct i915_address_space *vm,
        return 0;
 
 unwind_out:
-       gen6_ppgtt_clear_range(vm, from, start);
+       gen6_ppgtt_clear_range(vm, from, start - from);
        return -ENOMEM;
 }