[igt-dev] [PATCH v4 i-g-t 10/15] tests/i915/i915_hangman: Run background task on all engines
John.C.Harrison at Intel.com
John.C.Harrison at Intel.com
Thu Jan 13 23:51:13 UTC 2022
From: John Harrison <John.C.Harrison at Intel.com>
As opposed to only on the non-target engines. This means that there is
some other workload present for the scheduler to switch between and so
detet the hang immediately.
Signed-off-by: John Harrison <John.C.Harrison at Intel.com>
Reviewed-by: Matthew Brost <matthew.brost at intel.com>
---
tests/i915/i915_hangman.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/tests/i915/i915_hangman.c b/tests/i915/i915_hangman.c
index 24087931c..a1aeeba6d 100644
--- a/tests/i915/i915_hangman.c
+++ b/tests/i915/i915_hangman.c
@@ -298,12 +298,14 @@ test_engine_hang(const intel_ctx_t *ctx,
igt_skip_on(flags & IGT_SPIN_INVALID_CS &&
gem_engine_has_cmdparser(device, &ctx->cfg, e->flags));
- /* Fill all the other engines with background load */
+ /*
+ * Fill all engines with background load.
+ * This verifies that independent engines are unaffected and gives
+ * the target engine something to switch between so it notices the
+ * hang.
+ */
num_ctx = 0;
for_each_ctx_engine(device, ctx, other) {
- if (other->flags == e->flags)
- continue;
-
local_ctx[num_ctx] = intel_ctx_create(device, &ctx->cfg);
ahndN = get_reloc_ahnd(device, local_ctx[num_ctx]->id);
spin = __igt_spin_new(device,
--
2.25.1
More information about the igt-dev
mailing list