[igt-dev] [PATCH i-g-t v2] tests/prime_vgem: fix test listing problem

Kamil Konieczny kamil.konieczny at linux.intel.com
Mon Jan 23 15:17:11 UTC 2023


Move call to function with possible usage of card fd inside
fixture, as uses of fd are allowed inside fixtures or subtests.
This may eliminate problem when using --list-subtests option,
depending on implementation it can assert like:

sudo build/tests/prime_vgem --list-subtests
...
coherency-blt
(prime_vgem:259195) intel_ctx-CRITICAL: Test assertion failure function intel_ctx_create_all_physical, file ../lib/intel_ctx.c:344:
(prime_vgem:259195) intel_ctx-CRITICAL: Failed assertion: err == 0
(prime_vgem:259195) intel_ctx-CRITICAL: error: -9 != 0
Test prime_vgem failed.

v2: improve commit messages and use fixtures for create and
  destroy of context (Petri)

Reported-by: Petri Latvala <petri.latvala at intel.com>
Cc: Petri Latvala <petri.latvala at intel.com>
Signed-off-by: Kamil Konieczny <kamil.konieczny at linux.intel.com>
---
 tests/prime_vgem.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c
index f876e748..06be273c 100644
--- a/tests/prime_vgem.c
+++ b/tests/prime_vgem.c
@@ -1093,7 +1093,10 @@ static void test_each_engine(const char *name, int vgem, int i915,
 					unsigned int flags))
 {
 	const struct intel_execution_engine2 *e;
-	const intel_ctx_t *ctx = intel_ctx_create_all_physical(i915);
+	const intel_ctx_t *ctx;
+
+	igt_fixture
+		ctx = intel_ctx_create_all_physical(i915);
 
 	igt_subtest_with_dynamic(name) {
 		for_each_ctx_engine(i915, ctx, e) {
@@ -1110,7 +1113,8 @@ static void test_each_engine(const char *name, int vgem, int i915,
 		}
 	}
 
-	intel_ctx_destroy(i915, ctx);
+	igt_fixture
+		intel_ctx_destroy(i915, ctx);
 }
 
 igt_main
-- 
2.37.2



More information about the igt-dev mailing list