Re: [PATCH i-g-t v2 08/16] tests/kms_psr: limit #outputs tested during suspend
"Thasleem, Mohammed" <[email protected]>
| Newsgroups | org.freedesktop.lists.igt-dev |
|---|---|
| Message-ID | <[email protected]> |
On 08-08-2026 04:17 am, Michał Grzelak wrote: > We are iterating through each output while testing suspend. This results > in extended execution time. In turn this leads to hitting CI enforced > timeout. > > By default limit number of tested outputs to 2. Test each connected > output when passing command-line parameter. > > v1->v2 > - s/OUTPUT_LIMIT/SUSPEND_OUTPUT_LIMIT/ (Mohammed) > - fix typos (Mohammed) > - fix off-by-one error (Mohammed) > > Signed-off-by: Michał Grzelak <[email protected]> > --- > tests/intel/kms_psr.c | 29 ++++++++++++++++++++++++++++- > 1 file changed, 28 insertions(+), 1 deletion(-) > > diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c > index 7b02dd2072..41ce436ee5 100644 > --- a/tests/intel/kms_psr.c > +++ b/tests/intel/kms_psr.c > @@ -275,6 +275,9 @@ > * @plane-move: Move plane position > */ > > +#define SUSPEND_OUTPUT_LIMIT 2 > + > + -->Remove extra line > enum operations { > PAGE_FLIP, > MMAP_GTT, > @@ -318,6 +321,7 @@ typedef struct { > drmModeModeInfo *mode; > igt_output_t *output; > bool fbc_flag; > + bool all_outputs; > } data_t; > > static void create_cursor_fb(data_t *data) > @@ -767,9 +771,27 @@ static void dpms_off_on(data_t *data) > DRM_MODE_DPMS_ON); > } > > +static int opt_handler(int opt, int opt_index, void *opt_data) > +{ > + data_t *data = opt_data; > + > + switch (opt) { -->Seems indentation missing, check once.. > + case 'o': > + data->all_outputs = true; > + break; > + default: > + return IGT_OPT_HANDLER_ERROR; > + } > + > + return IGT_OPT_HANDLER_SUCCESS; > +} > + > data_t data = {}; > > -int igt_main() > +const char *help_str = > + " -o \tRun on all connectors. By default suspend subtests will run on 2 connectors\n"; -->IMO, two spaces before "-o"-->" -o", updated as below: " -o \tRun on all connectors. (By default suspend subtests will run on 2 connectors)\n"; > + > +int igt_main_args("o", NULL, help_str, opt_handler, &data) > { > int z, y; > enum operations op; > @@ -945,10 +967,15 @@ int igt_main() > "performed with suspend resume cycles"); > igt_subtest_with_dynamic_f("%s%ssuspend", append_fbc_subtest[y], > append_subtest_name[z]) { > + int output_count = 0; > + > for_each_connected_output(&data.display, output) { > if (!psr_sink_support(data.drm_fd, data.debugfs_fd, > data.op_psr_mode, output)) > continue; > + if (!data.all_outputs && output_count >= SUSPEND_OUTPUT_LIMIT) > + continue; > + output_count++; > igt_display_reset(&data.display); > data.output = output; > igt_dynamic_f("%s", data.output->name) {