[PATCH i-g-t v5 05/17] tests/kms_frontbuffer_tracking: remove TEST_MODE_ITER_BEGIN() from `suspend`
From: Michał Grzelak <hidden>
Date: 2026-09-10 20:17:34
Subsystem:
the rest · Maintainer:
Linus Torvalds
igt@kms_frontbuffer_tracking uses TEST_MODE_ITER_BEGIN(t) which consists of nested for loops. However many loops can be omitted due to continue statements. This obfuscates following the execution of any given codepath. Replace TEST_MODE_ITER_BEGIN(t) for fliptrack tests with macro definition and remove loops that are skipped. v1->v2 - remove blank line (Mohammed) Signed-off-by: Michał Grzelak <redacted> Reviewed-by: Mohammed Thasleem <redacted> --- tests/intel/kms_frontbuffer_tracking.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-)
diff --git a/tests/intel/kms_frontbuffer_tracking.c b/tests/intel/kms_frontbuffer_tracking.c
index dd7d3188fe..dc8ef069b8 100644
--- a/tests/intel/kms_frontbuffer_tracking.c
+++ b/tests/intel/kms_frontbuffer_tracking.c@@ -4646,12 +4646,19 @@ int igt_main_args("", long_options, help_str, opt_handler, NULL) } TEST_MODE_ITER_END - TEST_MODE_ITER_BEGIN(t) - if (t.pipes != PIPE_SINGLE || - t.screen != SCREEN_PRIM || - t.plane != PLANE_PRI || - t.fbs != FBS_INDIVIDUAL || - t.method != IGT_DRAW_BLT) + t.format = FORMAT_DEFAULT; + t.flip = FLIP_PAGEFLIP; + t.tiling = opt.tiling; + t.pipes = PIPE_SINGLE; + t.screen = SCREEN_PRIM; + t.plane = PLANE_PRI; + t.fbs = FBS_INDIVIDUAL; + t.method = IGT_DRAW_BLT; + + for (t.feature = 0; t.feature < FEATURE_COUNT; t.feature++) { + if (!opt.show_hidden && t.feature == FEATURE_NONE) + continue; + if ((t.feature & FEATURE_PSR) && (t.feature & FEATURE_DRRS)) continue; igt_subtest_f("%s-modesetfrombusy", feature_str(t.feature))
@@ -4712,7 +4719,7 @@ int igt_main_args("", long_options, help_str, opt_handler, NULL) igt_require(igt_draw_supports_method(drm.fd, t.method)); suspend_subtest(&t); } - TEST_MODE_ITER_END + } t.pipes = PIPE_SINGLE; t.screen = SCREEN_PRIM;
--
2.45.2