From: Kamil Konieczny <kamil.konieczny@linux.intel.com>
To: igt-dev@lists.freedesktop.org
Subject: [igt-dev] [PATCH i-g-t 1/2] runner/resultgen: relax results processing
Date: Tue, 28 Feb 2023 22:25:37 +0100 [thread overview]
Message-ID: <20230228212538.47984-1-kamil.konieczny@linux.intel.com> (raw)
We observed problems with resume runs when one of tests from
run fail to respond to SIGKILL and then don't exits, which
was reported like:
[1415.815247] Child refuses to die, tainted 0x40. Aborting.
After machine was rebooted runs were resumed but at the end
results from run wasn't processed due to error at comms file
from failed test. Try to correct that behaviour and count
results if at least one of files (comms or log) or dmesg was
successfully processed and fail only when both fail. Also
print more detailed info about what failed.
Cc: Petri Latvala <adrinael@adrinael.net>
Signed-off-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
---
runner/resultgen.c | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/runner/resultgen.c b/runner/resultgen.c
index b00bb6ba..ddc2098e 100644
--- a/runner/resultgen.c
+++ b/runner/resultgen.c
@@ -2133,7 +2133,6 @@ static bool parse_test_directory(int dirfd,
if (commsparsed == COMMSPARSE_ERROR) {
fprintf(stderr, "Error parsing output files (comms)\n");
status = false;
- goto parse_output_end;
}
if (commsparsed == COMMSPARSE_EMPTY) {
@@ -2147,14 +2146,22 @@ static bool parse_test_directory(int dirfd,
!fill_from_output(fds[_F_ERR], entry->binary, "err", &subtests, results->tests)) {
fprintf(stderr, "Error parsing output files (out.txt, err.txt)\n");
status = false;
- goto parse_output_end;
}
}
if (!fill_from_dmesg(fds[_F_DMESG], settings, entry->binary, &subtests, results->tests)) {
fprintf(stderr, "Error parsing output files (dmesg.txt)\n");
+ if (!status) {
+ fprintf(stderr, "resultgen: Error parsing output files and dmesg.txt, bail out\n");
+ goto parse_output_end;
+ }
+
status = false;
- goto parse_output_end;
+ }
+
+ if (!status) {
+ fprintf(stderr, "resultgen: Warning: results may be incomplete for %s\n", entry->binary);
+ status = true;
}
override_results(entry->binary, &subtests, results->tests);
@@ -2302,6 +2309,7 @@ struct json_object *generate_results_json(int dirfd)
if (!parse_test_directory(testdirfd, &job_list.entries[i], &settings, &results)) {
close(testdirfd);
+ fprintf(stderr, "resultgen: Cannot parse results for: %s testname: %s\n", name, job_list.entries[i].binary);
return NULL;
}
close(testdirfd);
--
2.37.2
next reply other threads:[~2023-02-28 21:26 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-28 21:25 Kamil Konieczny [this message]
2023-02-28 21:25 ` [igt-dev] [PATCH i-g-t 2/2] runner/resume: change exit code for results gen fail Kamil Konieczny
2023-03-01 13:24 ` Petri Latvala
2023-02-28 22:20 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] runner/resultgen: relax results processing Patchwork
2023-03-01 0:34 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2023-03-01 13:25 ` [igt-dev] [PATCH i-g-t 1/2] " Petri Latvala
2023-03-01 15:54 ` Kamil Konieczny
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230228212538.47984-1-kamil.konieczny@linux.intel.com \
--to=kamil.konieczny@linux.intel.com \
--cc=igt-dev@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox