[PATCH i-g-t v5] runner: Parse results harder
Sebastian Brzezinka
sebastian.brzezinka at intel.com
Thu Mar 6 09:16:57 UTC 2025
Hi Kamil
On Wed Mar 5, 2025 at 7:31 PM UTC, Kamil Konieczny wrote:
> Sometimes an error happens in kernel or in test that leaves
> output files in corrupted or incorrect state. While runner or
> resume will just move on to executing next test, when generating
> results it could end up with no results.json
>
> Try processing outputs a little more persistently and use any
> output file left there, even if only dmesg.txt. Also, when no
> useful output files were present, instead of breaking out add
> notrun.
>
> Inform about processing results for each test so a problem
> could be spotted more easily.
>
> v2: removed ')' from 'notrun\n)' (Kamil)
> using bool var, added more prints about errors (Ryszard)
> v3: reused open_for_reading, removed bool var (Krzysztof)
> closing only positive fds[] in close_outputs(), checking
> file sizes also if all opens succeeded (Kamil)
> v4: reverting to v2 and addresing review comments (Krzysztof)
> closing only already opened file, drop early return when empty
> output files as this changes run status (Kamil)
> v5: reverting to returning false after any out/err/dmesg output
> is missing, simplified later checks and printed logs, fixed
> closing outputs (Kamil)
>
> Cc: Ewelina Musial <ewelina.musial at intel.com>
> Cc: Lucas De Marchi <lucas.demarchi at intel.com>
> Cc: Ryszard Knop <ryszard.knop at intel.com>
> Cc: Krzysztof Karas <krzysztof.karas at intel.com>
> Cc: Petri Latvala <adrinael at adrinael.net>
> Signed-off-by: Kamil Konieczny <kamil.konieczny at linux.intel.com>
> ---
> For results checks compile igt with runner and then run
> meson test -C build
>
> runner/executor.c | 34 +++++++++++++++++++++++++-
> runner/executor.h | 2 ++
> runner/resultgen.c | 61 ++++++++++++++++++++++++++++++++++------------
> 3 files changed, 81 insertions(+), 16 deletions(-)
>
> diff --git a/runner/executor.c b/runner/executor.c
> index 2abb18732..6cfe523a2 100644
> --- a/runner/executor.c
> +++ b/runner/executor.c
> @@ -576,15 +576,47 @@ bool open_output_files(int dirfd, int *fds, bool write)
> return true;
> }
>
> +/**
> + * open_output_files_rdonly:
> + * @dirfd: fd of output directory with err.txt, dmesg.txt and other files
> + * @fds: array for fd's of opened output files
> + *
> + * Tries to open output files in read-only mode and saves file descriptors
> + * in fds arrray.
%s/arrray/array
LGTM
Reviewed-by: Sebastian Brzezinka <sebastian.brzezinka at intel.com>
--
Best regards,
Sebastian
More information about the igt-dev
mailing list