diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2021-01-06 08:41:27 +0000 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2021-01-06 08:52:52 +0000 |
commit | f0ad1a564956d6796d9ff09182c48d78fb00eefe (patch) | |
tree | 758a69837f14c404b33dd4f6980a11cb434b2646 /tests/i915/gem_ctx_engines.c | |
parent | 96f1e41b22c3aeddc527716dc073080eecd84676 (diff) |
i915/gem_ctx_engines: Skip store-dword testing on unusable engines
If the engine does not support MI_STORE_DWORD, we cannot use
IGT_SPIN_POLL_RUN. For simplicity, skip testing that engine, slightly
better than skipping the entire test at least.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Acked-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Diffstat (limited to 'tests/i915/gem_ctx_engines.c')
-rw-r--r-- | tests/i915/gem_ctx_engines.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/tests/i915/gem_ctx_engines.c b/tests/i915/gem_ctx_engines.c index 220aa29a..643a0b2f 100644 --- a/tests/i915/gem_ctx_engines.c +++ b/tests/i915/gem_ctx_engines.c @@ -353,6 +353,9 @@ static void execute_one(int i915) __for_each_physical_engine(i915, e) { struct drm_i915_gem_busy busy = { .handle = obj.handle }; + if (!gem_class_can_store_dword(i915, e->class)) + continue; + igt_debug("Testing [%s...]\n", e->name); for (int i = -1; i <= I915_EXEC_RING_MASK; i++) { @@ -366,6 +369,9 @@ static void execute_one(int i915) igt_spin_reset(spin); gem_execbuf(i915, &spin->execbuf); + do_ioctl(i915, DRM_IOCTL_I915_GEM_BUSY, &busy); + igt_assert_eq(busy.busy, 0); + igt_debug("Testing with map of %d engines\n", i + 1); memset(&engines.engines, -1, sizeof(engines.engines)); if (i != -1) { |