If the system has bsd2, we do not know which ring the kernel will alias
I915_EXEC_BSD onto and so we do not what the matching string should be.
Skip the unknown.

v2: Deny the aliased I915_EXEC_BSD exists at all; be specific!

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103324
Signed-off-by: Chris Wilson <[email protected]>
CC: Michał Winiarski <[email protected]>
---
 tests/drv_hangman.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/tests/drv_hangman.c b/tests/drv_hangman.c
index 0551ec16..40c82257 100644
--- a/tests/drv_hangman.c
+++ b/tests/drv_hangman.c
@@ -184,6 +184,7 @@ static void test_error_state_capture(unsigned ring_id,
        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);
@@ -254,6 +255,20 @@ 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)
                        test_error_state_capture(e->exec_id | e->flags,
                                                 e->full_name);
-- 
2.15.0.rc2

_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to