diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2020-03-30 09:51:59 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2020-03-31 08:52:25 +0100 |
commit | f074c26aea9681e52a5128e0da45e809dbacbea4 (patch) | |
tree | 5d9386d07333bccdcf6f5b5053a94c4848748ff5 /tests/i915/gem_exec_parallel.c | |
parent | 563caa5c6c2535064f96cade2471ce854e76e114 (diff) |
i915/gem_exec_parallel: Dynamise per-engine tests
Convert the per-engine tests into a dynamic subtest.
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_exec_parallel.c')
-rw-r--r-- | tests/i915/gem_exec_parallel.c | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/tests/i915/gem_exec_parallel.c b/tests/i915/gem_exec_parallel.c index 98316af4..66fe1853 100644 --- a/tests/i915/gem_exec_parallel.c +++ b/tests/i915/gem_exec_parallel.c @@ -196,7 +196,6 @@ static void all(int fd, struct intel_execution_engine2 *engine, unsigned flags) engines[nengine++] = e->flags; } } else { - igt_require(gem_class_can_store_dword(fd, engine->class)); engines[nengine++] = engine->flags; } igt_require(nengine); @@ -254,7 +253,7 @@ igt_main const char *name; unsigned flags; } modes[] = { - { "", 0 }, + { "basic", 0 }, { "contexts", CONTEXTS }, { "fds", FDS }, { NULL } @@ -268,18 +267,21 @@ igt_main igt_fork_hang_detector(fd); } - for (const struct mode *m = modes; m->name; m++) - igt_subtest_f("%s", *m->name ? m->name : "basic") - /* NULL value means all engines */ - all(fd, NULL, m->flags); - - __for_each_physical_engine(fd, e) { + igt_subtest_with_dynamic("engines") { for (const struct mode *m = modes; m->name; m++) - igt_subtest_f("%s%s%s", - e->name, - *m->name ? "-" : "", - m->name) - all(fd, e, m->flags); + igt_dynamic(m->name) + /* NULL value means all engines */ + all(fd, NULL, m->flags); + } + + for (const struct mode *m = modes; m->name; m++) { + igt_subtest_with_dynamic(m->name) { + __for_each_physical_engine(fd, e) { + if (gem_class_can_store_dword(fd, e->class)) + igt_dynamic(e->name) + all(fd, e, m->flags); + } + } } igt_fixture { |