summaryrefslogtreecommitdiff
path: root/tests/drv_hangman.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/drv_hangman.c')
-rw-r--r--tests/drv_hangman.c20
1 files changed, 3 insertions, 17 deletions
diff --git a/tests/drv_hangman.c b/tests/drv_hangman.c
index 40c82257..38cb20c3 100644
--- a/tests/drv_hangman.c
+++ b/tests/drv_hangman.c
@@ -183,8 +183,6 @@ static void test_error_state_capture(unsigned ring_id,
igt_hang_t hang;
uint64_t offset;
- igt_require(gem_has_ring(device, ring_id));
-
clear_error_state();
hang = igt_hang_ctx(device, 0, ring_id, HANG_ALLOW_CAPTURE, &offset);
@@ -255,23 +253,11 @@ igt_main
if (e->exec_id == 0)
continue;
- /*
- * If the device has 2 BSD rings then due to obtuse aliasing
- * in the API, we can not determine which ring I915_EXEC_BSD
- * will map to, and so must skip the test; as the matching name
- * may be either bsd or bsd2 depending on the kernel/test
- * ordering.
- *
- * Here we are not checking that executing on every ABI engine
- * results in a detectable hang, but that a hang generated
- * from a specific HW engine gives an indentifiable result.
- */
- if (e->exec_id == I915_EXEC_BSD && e->flags == 0)
- continue;
-
- igt_subtest_f("error-state-capture-%s", e->name)
+ igt_subtest_f("error-state-capture-%s", e->name) {
+ igt_require(gem_ring_has_physical_engine(device, e->exec_id | e->flags));
test_error_state_capture(e->exec_id | e->flags,
e->full_name);
+ }
}
igt_subtest("hangcheck-unterminated")