summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2017-02-24 19:33:15 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2017-02-24 20:30:35 +0000
commit91e32157de148ce37422d8110f6f8a84d05da1ec (patch)
treef8daca87dfdd4bb17dd758a51e1740446b69b010 /drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
parentef0f411f51475f4eebf9fc1b19a85be698af19ff (diff)
downloadlinux-91e32157de148ce37422d8110f6f8a84d05da1ec.tar.bz2
drm/i915: Timeout lowlevel_hole GTT selftest early
Check for a timeout in the lowlevel_hole GTT before we allocate state for that pass, as our cleanup phase stops on the iteration before the timeout. References: https://bugs.freedesktop.org/show_bug.cgi?id=99947 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Matthew Auld <matthew.william.auld@gmail.com> Link: http://patchwork.freedesktop.org/patch/msgid/20170224193315.21072-1-chris@chris-wilson.co.uk Reviewed-by: Matthew Auld <matthew.william.auld@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/i915/selftests/i915_gem_gtt.c')
-rw-r--r--drivers/gpu/drm/i915/selftests/i915_gem_gtt.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
index e23753181720..6bac267914df 100644
--- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
@@ -237,18 +237,19 @@ static int lowlevel_hole(struct drm_i915_private *i915,
GEM_BUG_ON(addr + BIT_ULL(size) > vm->total);
+ if (igt_timeout(end_time,
+ "%s timed out before %d/%d\n",
+ __func__, n, count)) {
+ hole_end = hole_start; /* quit */
+ break;
+ }
+
if (vm->allocate_va_range &&
vm->allocate_va_range(vm, addr, BIT_ULL(size)))
break;
vm->insert_entries(vm, obj->mm.pages, addr,
I915_CACHE_NONE, 0);
- if (igt_timeout(end_time,
- "%s timed out after %d/%d\n",
- __func__, n, count)) {
- hole_end = hole_start; /* quit */
- break;
- }
}
count = n;