summaryrefslogtreecommitdiff
path: root/runner
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2018-11-13 17:19:10 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2018-11-27 13:01:10 +0000
commit0be3f3e7c1613dcaf27267fce778025ea46a36c1 (patch)
tree9dae44cfb9bb5034c5331595e0c8c4898202f7f8 /runner
parent760106abf8f0ab8683fd61c858f1fb77686e5405 (diff)
runner: Treat dmesg warnings as pure warnings
I have whinged on for ages about the dmesg-warnings being an expected part of kernel testing (where else is the kernel meant to log its errors?) and should be treated the same as our stderr for the test. That is if a test fails, it fails and does not need to be conflated with whether or not there was a dmesg warning (just as the test saying why it failed on stderr does not need flagging), and that a passing test with a dmesg warning is simply a warn. The effect is that we simply remove the "dmesg-" flagging from results names, as the err/dmesg output is simply collated for the error report already. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Martin Peres <martin.peres@linux.intel.com>
Diffstat (limited to 'runner')
-rw-r--r--runner/resultgen.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/runner/resultgen.c b/runner/resultgen.c
index b0933ad7..74e6d21f 100644
--- a/runner/resultgen.c
+++ b/runner/resultgen.c
@@ -466,8 +466,8 @@ static bool fill_from_output(int fd, const char *binary, const char *key,
/*
* This regexp controls the kmsg handling. All kernel log records that
- * have log level of warning or higher convert the result to
- * dmesg-warn/dmesg-fail unless they match this regexp.
+ * have log level of warning or higher convert a passing result to
+ * warn unless they match this regexp.
*
* TODO: Move this to external files, i915-suppressions.txt,
* general-suppressions.txt et al.
@@ -826,14 +826,11 @@ static void override_result_single(struct json_object *obj)
{
const char *errtext = NULL, *result = NULL;
struct json_object *textobj;
- bool dmesgwarns = false;
if (json_object_object_get_ex(obj, "err", &textobj))
errtext = json_object_get_string(textobj);
if (json_object_object_get_ex(obj, "result", &textobj))
result = json_object_get_string(textobj);
- if (json_object_object_get_ex(obj, "dmesg-warnings", &textobj))
- dmesgwarns = true;
if (!strcmp(result, "pass") &&
count_lines(errtext, errtext + strlen(errtext)) > 2) {
@@ -841,13 +838,9 @@ static void override_result_single(struct json_object *obj)
result = "warn";
}
- if (dmesgwarns) {
- if (!strcmp(result, "pass") || !strcmp(result, "warn")) {
- set_result(obj, "dmesg-warn");
- } else if (!strcmp(result, "fail")) {
- set_result(obj, "dmesg-fail");
- }
- }
+ if (json_object_object_get_ex(obj, "dmesg-warnings", &textobj) &&
+ !strcmp(result, "pass"))
+ set_result(obj, "warn");
}
static void override_results(char *binary,