* [igt-dev] [PATCH] runner: add --list-all and --blacklist
@ 2019-06-14 13:24 Oleg Vasilev
2019-06-14 13:43 ` [igt-dev] ✗ Fi.CI.BAT: failure for " Patchwork
` (9 more replies)
0 siblings, 10 replies; 17+ messages in thread
From: Oleg Vasilev @ 2019-06-14 13:24 UTC (permalink / raw)
To: igt-dev; +Cc: Petri Latvala
Currently, runner already collects all subtest names into job_list.
--list-all allows to output it to stdout.
--blacklist option takes a filename as an argument and adds all regexes
from that file to the exclusion list.
Cc: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com>
---
runner/job_list.c | 18 +++++++
runner/job_list.h | 1 +
runner/runner.c | 5 ++
runner/runner_tests.c | 14 ++++-
runner/settings.c | 118 ++++++++++++++++++++++++++++++++++--------
runner/settings.h | 1 +
6 files changed, 135 insertions(+), 22 deletions(-)
diff --git a/runner/job_list.c b/runner/job_list.c
index 4a16742f..2a50dc5c 100644
--- a/runner/job_list.c
+++ b/runner/job_list.c
@@ -291,6 +291,24 @@ static bool job_list_from_test_list(struct job_list *job_list,
return any;
}
+void list_all_tests(struct job_list* lst)
+{
+ for (size_t test_idx = 0; test_idx < lst->size; ++test_idx){
+ struct job_list_entry* current_entry = lst->entries+test_idx;
+ if (current_entry->subtest_count==0) {
+ printf("igt@%s\n", current_entry->binary);
+ continue;
+ }
+ for (size_t subtest_idx = 0;
+ subtest_idx < current_entry->subtest_count;
+ ++subtest_idx) {
+ char *subtest_name = current_entry->subtests[subtest_idx];
+ printf("igt@%s@%s\n", current_entry->binary, subtest_name);
+ }
+ }
+}
+
+
static char *lowercase(const char *str)
{
char *ret = malloc(strlen(str) + 1);
diff --git a/runner/job_list.h b/runner/job_list.h
index f8bbbddc..cee4bff6 100644
--- a/runner/job_list.h
+++ b/runner/job_list.h
@@ -36,5 +36,6 @@ bool create_job_list(struct job_list *job_list, struct settings *settings);
bool serialize_job_list(struct job_list *job_list, struct settings *settings);
bool read_job_list(struct job_list *job_list, int dirfd);
+void list_all_tests(struct job_list* lst);
#endif
diff --git a/runner/runner.c b/runner/runner.c
index e1a6ccba..909ec861 100644
--- a/runner/runner.c
+++ b/runner/runner.c
@@ -24,6 +24,11 @@ int main(int argc, char **argv)
return 1;
}
+ if(settings.list_all) {
+ list_all_tests(&job_list);
+ return 0;
+ }
+
if (!initialize_execute_state(&state, &settings, &job_list)) {
return 1;
}
diff --git a/runner/runner_tests.c b/runner/runner_tests.c
index c09cda70..00bb9de3 100644
--- a/runner/runner_tests.c
+++ b/runner/runner_tests.c
@@ -388,6 +388,8 @@ igt_main
"-t", "pattern2",
"-x", "xpattern1",
"-x", "xpattern2",
+ "-b", "../runner/testdata/test-blacklist.txt",
+ "--blacklist", "../runner/testdata/test-blacklist2.txt",
"-s",
"-l", "verbose",
"--overwrite",
@@ -410,9 +412,11 @@ igt_main
igt_assert_eq(settings->include_regexes.size, 2);
igt_assert_eqstr(settings->include_regexes.regex_strings[0], "pattern1");
igt_assert_eqstr(settings->include_regexes.regex_strings[1], "pattern2");
- igt_assert_eq(settings->exclude_regexes.size, 2);
+ igt_assert_eq(settings->exclude_regexes.size, 4);
igt_assert_eqstr(settings->exclude_regexes.regex_strings[0], "xpattern1");
igt_assert_eqstr(settings->exclude_regexes.regex_strings[1], "xpattern2");
+ igt_assert_eqstr(settings->exclude_regexes.regex_strings[2], "xpattern3"); /* From blacklist */
+ igt_assert_eqstr(settings->exclude_regexes.regex_strings[3], "xpattern4"); /* From blacklist2 */
igt_assert(settings->sync);
igt_assert_eq(settings->log_level, LOG_LEVEL_VERBOSE);
igt_assert(settings->overwrite);
@@ -426,6 +430,14 @@ igt_main
igt_assert(settings->piglit_style_dmesg);
igt_assert_eq(settings->dmesg_warn_level, 3);
}
+ igt_subtest("parse-list-all") {
+ const char *argv[] = { "runner",
+ "--list-all",
+ "test-root-dir"};
+
+ igt_assert(parse_options(ARRAY_SIZE(argv), (char**)argv, settings));
+ igt_assert_eq(settings->list_all, 1);
+ }
igt_subtest("dmesg-warn-level-inferred") {
const char *argv[] = { "runner",
diff --git a/runner/settings.c b/runner/settings.c
index ad38ae8d..2692370f 100644
--- a/runner/settings.c
+++ b/runner/settings.c
@@ -1,5 +1,6 @@
#include "settings.h"
+#include <ctype.h>
#include <errno.h>
#include <fcntl.h>
#include <getopt.h>
@@ -30,6 +31,8 @@ enum {
OPT_MULTIPLE = 'm',
OPT_TIMEOUT = 'c',
OPT_WATCHDOG = 'g',
+ OPT_BLACKLIST = 'b',
+ OPT_LIST_ALL = 'L',
};
static struct {
@@ -117,7 +120,8 @@ static bool parse_abort_conditions(struct settings *settings, const char *optarg
}
static const char *usage_str =
- "usage: runner [options] [test_root] results-path\n\n"
+ "usage: runner [options] [test_root] results-path\n"
+ " or: runner --list-all [options] [test_root] \n\n"
"Options:\n"
" Piglit compatible:\n"
" -h, --help Show this help message and exit\n"
@@ -172,6 +176,10 @@ static const char *usage_str =
" (longer) filter list means the test result should\n"
" change. KERN_NOTICE dmesg level is treated as warn,\n"
" unless overridden with --dmesg-warn-level.\n"
+ " -b, --blacklist FILENAME\n"
+ " Exclude all test matching to regexes from FILENAME\n"
+ " (can be used more than once)\n"
+ " -L, --list-all List all matching subtests instead of running\n"
" [test_root] Directory that contains the IGT tests. The environment\n"
" variable IGT_TEST_ROOT will be used if set, overriding\n"
" this option if given.\n"
@@ -213,6 +221,51 @@ static bool add_regex(struct regex_list *list, char *new)
return true;
}
+static bool parse_blacklist(struct regex_list *exclude_regexes, char *blacklist_filename)
+{
+ FILE *f;
+ char *line = NULL;
+ size_t line_len = 0;
+ bool status;
+
+
+ if ((f = fopen(blacklist_filename, "r")) == NULL) {
+ fprintf(stderr, "Cannot open blacklist file %s\n", blacklist_filename);
+ return false;
+ }
+ while (1) {
+ size_t str_size = 0, idx = 0;
+
+ if (getline(&line, &line_len, f) == -1) {
+ if (errno == EINTR)
+ continue;
+ else
+ break;
+ }
+
+ while (true) {
+ if(line[idx]=='\n' ||
+ line[idx]=='#' || /* # starts a comment */
+ line[idx]=='\0')
+ break;
+ idx++;
+ if (!isspace(line[str_size]))
+ str_size = idx;
+ }
+ if (str_size > 0) {
+ char * test_regex = strndup(line, str_size);
+ status = add_regex(exclude_regexes, test_regex);
+ if(!status){
+ break;
+ }
+ }
+ }
+
+ free(line);
+ fclose(f);
+ return status;
+}
+
static void free_regexes(struct regex_list *regexes)
{
size_t i;
@@ -272,6 +325,8 @@ bool parse_options(int argc, char **argv,
{"use-watchdog", no_argument, NULL, OPT_WATCHDOG},
{"piglit-style-dmesg", no_argument, NULL, OPT_PIGLIT_DMESG},
{"dmesg-warn-level", required_argument, NULL, OPT_DMESG_WARN_LEVEL},
+ {"blacklist", required_argument, NULL, OPT_BLACKLIST},
+ {"list-all", no_argument, NULL, OPT_LIST_ALL},
{ 0, 0, 0, 0},
};
@@ -281,7 +336,7 @@ bool parse_options(int argc, char **argv,
settings->dmesg_warn_level = -1;
- while ((c = getopt_long(argc, argv, "hn:dt:x:sl:om", long_options, NULL)) != -1) {
+ while ((c = getopt_long(argc, argv, "hn:dt:x:sl:omb:L", long_options, NULL)) != -1) {
switch (c) {
case OPT_HELP:
usage(NULL, stdout);
@@ -342,6 +397,13 @@ bool parse_options(int argc, char **argv,
case OPT_DMESG_WARN_LEVEL:
settings->dmesg_warn_level = atoi(optarg);
break;
+ case OPT_BLACKLIST:
+ if (!parse_blacklist(&settings->exclude_regexes, absolute_path(optarg)))
+ goto error;
+ break;
+ case OPT_LIST_ALL:
+ settings->list_all = true;
+ break;
case '?':
usage(NULL, stderr);
goto error;
@@ -354,20 +416,39 @@ bool parse_options(int argc, char **argv,
if (settings->dmesg_warn_level < 0)
settings->dmesg_warn_level = 4; /* KERN_WARN */
- switch (argc - optind) {
- case 2:
- settings->test_root = absolute_path(argv[optind]);
- ++optind;
- /* fallthrough */
- case 1:
- settings->results_path = absolute_path(argv[optind]);
- break;
- case 0:
- usage("Results-path missing", stderr);
- goto error;
- default:
- usage("Extra arguments after results-path", stderr);
- goto error;
+ if (settings->list_all) { /* --list-all doesn't requrie results path */
+ switch (argc - optind) {
+ case 1:
+ settings->test_root = absolute_path(argv[optind]);
+ ++optind;
+ /* fallthrough */
+ case 0:
+ break;
+ default:
+ usage("Too many arguments for --list-all", stderr);
+ goto error;
+ }
+ } else {
+ switch (argc - optind) {
+ case 2:
+ settings->test_root = absolute_path(argv[optind]);
+ ++optind;
+ /* fallthrough */
+ case 1:
+ settings->results_path = absolute_path(argv[optind]);
+ break;
+ case 0:
+ usage("Results-path missing", stderr);
+ goto error;
+ default:
+ usage("Extra arguments after results-path", stderr);
+ goto error;
+ }
+ if (!settings->name) {
+ char *name = strdup(settings->results_path);
+ settings->name = strdup(basename(name));
+ free(name);
+ }
}
if ((env_test_root = getenv("IGT_TEST_ROOT")) != NULL) {
@@ -380,11 +461,6 @@ bool parse_options(int argc, char **argv,
goto error;
}
- if (!settings->name) {
- char *name = strdup(settings->results_path);
- settings->name = strdup(basename(name));
- free(name);
- }
return true;
diff --git a/runner/settings.h b/runner/settings.h
index 0a1ee08d..6dcfa8c5 100644
--- a/runner/settings.h
+++ b/runner/settings.h
@@ -43,6 +43,7 @@ struct settings {
char *results_path;
bool piglit_style_dmesg;
int dmesg_warn_level;
+ bool list_all;
};
/**
--
2.21.0
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 17+ messages in thread* [igt-dev] ✗ Fi.CI.BAT: failure for runner: add --list-all and --blacklist 2019-06-14 13:24 [igt-dev] [PATCH] runner: add --list-all and --blacklist Oleg Vasilev @ 2019-06-14 13:43 ` Patchwork 2019-06-14 14:28 ` [igt-dev] [PATCH] " Petri Latvala ` (8 subsequent siblings) 9 siblings, 0 replies; 17+ messages in thread From: Patchwork @ 2019-06-14 13:43 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev == Series Details == Series: runner: add --list-all and --blacklist URL : https://patchwork.freedesktop.org/series/62106/ State : failure == Summary == IGT patchset build failed on latest successful build c7b717f0126374a02fc86de5eb5fb1f3e7b3335b lib/ehl: Add EHL PCI IDs to match table A file containing a list of tests to run -o, --overwrite If the results-path already exists, delete it --ignore-missing Ignored but accepted, for piglit compatibility Incompatible options: -m, --multiple-mode Run multiple subtests in the same binary execution. If a testlist file is given, consecutive subtests are run in the same execution if they are from the same binary. Note that in that case relative ordering of the subtest execution is dictated by the test binary, not the testlist --inactivity-timeout <seconds> Kill the running test after <seconds> of inactivity in the test's stdout, stderr, or dmesg --overall-timeout <seconds> Don't execute more tests after <seconds> has elapsed --use-watchdog Use hardware watchdog for lethal enforcement of the above timeout. Killing the test process is still attempted at timeout trigger. --dmesg-warn-level <level> Messages with log level equal or lower (more serious) to the given one will override the test result to dmesg-warn/dmesg-fail, assuming they go through filtering. Defaults to 4 (KERN_WARNING). --piglit-style-dmesg Filter dmesg like piglit does. Piglit considers matches against a short filter list to mean the test result should be changed to dmesg-warn/dmesg-fail. Without this option everything except matches against a (longer) filter list means the test result should change. KERN_NOTICE dmesg level is treated as warn, unless overridden with --dmesg-warn-level. -b, --blacklist FILENAME Exclude all test matching to regexes from FILENAME (can be used more than once) -L, --list-all List all matching subtests instead of running [test_root] Directory that contains the IGT tests. The environment variable IGT_TEST_ROOT will be used if set, overriding this option if given. Cannot open /home/cidrm/igt-gpu-tools/build/tmpdirAFULv5/test-list.txt Warning: Adjusting oom score failed. Warning: Adjusting oom score failed. Warning: Adjusting oom score failed. Warning: Adjusting oom score failed. Warning: Adjusting oom score failed. ------- Full log written to /home/cidrm/igt-gpu-tools/build/meson-logs/testlog.txt FAILED: meson-test /usr/bin/python3 -u /usr/bin/meson test --no-rebuild --print-errorlogs ninja: build stopped: subcommand failed. _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH] runner: add --list-all and --blacklist 2019-06-14 13:24 [igt-dev] [PATCH] runner: add --list-all and --blacklist Oleg Vasilev 2019-06-14 13:43 ` [igt-dev] ✗ Fi.CI.BAT: failure for " Patchwork @ 2019-06-14 14:28 ` Petri Latvala 2019-06-17 11:49 ` [igt-dev] [PATCH v2] " Oleg Vasilev ` (7 subsequent siblings) 9 siblings, 0 replies; 17+ messages in thread From: Petri Latvala @ 2019-06-14 14:28 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev On Fri, Jun 14, 2019 at 04:24:29PM +0300, Oleg Vasilev wrote: > Currently, runner already collects all subtest names into job_list. > --list-all allows to output it to stdout. > > --blacklist option takes a filename as an argument and adds all regexes > from that file to the exclusion list. > > Cc: Petri Latvala <petri.latvala@intel.com> > Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com> > --- > runner/job_list.c | 18 +++++++ > runner/job_list.h | 1 + > runner/runner.c | 5 ++ > runner/runner_tests.c | 14 ++++- > runner/settings.c | 118 ++++++++++++++++++++++++++++++++++-------- > runner/settings.h | 1 + > 6 files changed, 135 insertions(+), 22 deletions(-) > > diff --git a/runner/job_list.c b/runner/job_list.c > index 4a16742f..2a50dc5c 100644 > --- a/runner/job_list.c > +++ b/runner/job_list.c > @@ -291,6 +291,24 @@ static bool job_list_from_test_list(struct job_list *job_list, > return any; > } > > +void list_all_tests(struct job_list* lst) > +{ > + for (size_t test_idx = 0; test_idx < lst->size; ++test_idx){ > + struct job_list_entry* current_entry = lst->entries+test_idx; > + if (current_entry->subtest_count==0) { > + printf("igt@%s\n", current_entry->binary); > + continue; > + } > + for (size_t subtest_idx = 0; > + subtest_idx < current_entry->subtest_count; > + ++subtest_idx) { > + char *subtest_name = current_entry->subtests[subtest_idx]; > + printf("igt@%s@%s\n", current_entry->binary, subtest_name); > + } > + } > +} > + > + > static char *lowercase(const char *str) > { > char *ret = malloc(strlen(str) + 1); > diff --git a/runner/job_list.h b/runner/job_list.h > index f8bbbddc..cee4bff6 100644 > --- a/runner/job_list.h > +++ b/runner/job_list.h > @@ -36,5 +36,6 @@ bool create_job_list(struct job_list *job_list, struct settings *settings); > > bool serialize_job_list(struct job_list *job_list, struct settings *settings); > bool read_job_list(struct job_list *job_list, int dirfd); > +void list_all_tests(struct job_list* lst); > > #endif > diff --git a/runner/runner.c b/runner/runner.c > index e1a6ccba..909ec861 100644 > --- a/runner/runner.c > +++ b/runner/runner.c > @@ -24,6 +24,11 @@ int main(int argc, char **argv) > return 1; > } > > + if(settings.list_all) { Add space after if > + list_all_tests(&job_list); > + return 0; > + } > + > if (!initialize_execute_state(&state, &settings, &job_list)) { > return 1; > } > diff --git a/runner/runner_tests.c b/runner/runner_tests.c > index c09cda70..00bb9de3 100644 > --- a/runner/runner_tests.c > +++ b/runner/runner_tests.c > @@ -388,6 +388,8 @@ igt_main > "-t", "pattern2", > "-x", "xpattern1", > "-x", "xpattern2", > + "-b", "../runner/testdata/test-blacklist.txt", > + "--blacklist", "../runner/testdata/test-blacklist2.txt", Don't use relative paths, you don't know what the CWD is. Use the variable testdatadir to find runner/testdata. And remember to git add those files. > "-s", > "-l", "verbose", > "--overwrite", > @@ -410,9 +412,11 @@ igt_main > igt_assert_eq(settings->include_regexes.size, 2); > igt_assert_eqstr(settings->include_regexes.regex_strings[0], "pattern1"); > igt_assert_eqstr(settings->include_regexes.regex_strings[1], "pattern2"); > - igt_assert_eq(settings->exclude_regexes.size, 2); > + igt_assert_eq(settings->exclude_regexes.size, 4); > igt_assert_eqstr(settings->exclude_regexes.regex_strings[0], "xpattern1"); > igt_assert_eqstr(settings->exclude_regexes.regex_strings[1], "xpattern2"); > + igt_assert_eqstr(settings->exclude_regexes.regex_strings[2], "xpattern3"); /* From blacklist */ > + igt_assert_eqstr(settings->exclude_regexes.regex_strings[3], "xpattern4"); /* From blacklist2 */ > igt_assert(settings->sync); > igt_assert_eq(settings->log_level, LOG_LEVEL_VERBOSE); > igt_assert(settings->overwrite); > @@ -426,6 +430,14 @@ igt_main > igt_assert(settings->piglit_style_dmesg); > igt_assert_eq(settings->dmesg_warn_level, 3); > } > + igt_subtest("parse-list-all") { > + const char *argv[] = { "runner", > + "--list-all", > + "test-root-dir"}; > + > + igt_assert(parse_options(ARRAY_SIZE(argv), (char**)argv, settings)); > + igt_assert_eq(settings->list_all, 1); > + } > > igt_subtest("dmesg-warn-level-inferred") { > const char *argv[] = { "runner", > diff --git a/runner/settings.c b/runner/settings.c > index ad38ae8d..2692370f 100644 > --- a/runner/settings.c > +++ b/runner/settings.c > @@ -1,5 +1,6 @@ > #include "settings.h" > > +#include <ctype.h> > #include <errno.h> > #include <fcntl.h> > #include <getopt.h> > @@ -30,6 +31,8 @@ enum { > OPT_MULTIPLE = 'm', > OPT_TIMEOUT = 'c', > OPT_WATCHDOG = 'g', > + OPT_BLACKLIST = 'b', > + OPT_LIST_ALL = 'L', > }; > > static struct { > @@ -117,7 +120,8 @@ static bool parse_abort_conditions(struct settings *settings, const char *optarg > } > > static const char *usage_str = > - "usage: runner [options] [test_root] results-path\n\n" > + "usage: runner [options] [test_root] results-path\n" > + " or: runner --list-all [options] [test_root] \n\n" > "Options:\n" > " Piglit compatible:\n" > " -h, --help Show this help message and exit\n" > @@ -172,6 +176,10 @@ static const char *usage_str = > " (longer) filter list means the test result should\n" > " change. KERN_NOTICE dmesg level is treated as warn,\n" > " unless overridden with --dmesg-warn-level.\n" > + " -b, --blacklist FILENAME\n" > + " Exclude all test matching to regexes from FILENAME\n" > + " (can be used more than once)\n" > + " -L, --list-all List all matching subtests instead of running\n" > " [test_root] Directory that contains the IGT tests. The environment\n" > " variable IGT_TEST_ROOT will be used if set, overriding\n" > " this option if given.\n" > @@ -213,6 +221,51 @@ static bool add_regex(struct regex_list *list, char *new) > return true; > } > > +static bool parse_blacklist(struct regex_list *exclude_regexes, char *blacklist_filename) > +{ > + FILE *f; > + char *line = NULL; > + size_t line_len = 0; > + bool status; > + > + You have an extra newline here. > + if ((f = fopen(blacklist_filename, "r")) == NULL) { > + fprintf(stderr, "Cannot open blacklist file %s\n", blacklist_filename); > + return false; > + } > + while (1) { > + size_t str_size = 0, idx = 0; > + > + if (getline(&line, &line_len, f) == -1) { > + if (errno == EINTR) > + continue; > + else > + break; > + } > + > + while (true) { > + if(line[idx]=='\n' || > + line[idx]=='#' || /* # starts a comment */ > + line[idx]=='\0') > + break; > + idx++; > + if (!isspace(line[str_size])) > + str_size = idx; > + } > + if (str_size > 0) { > + char * test_regex = strndup(line, str_size); > + status = add_regex(exclude_regexes, test_regex); > + if(!status){ > + break; > + } > + } There's something in this parsing code that feels funky but as long as it works (more on that later)... > + } > + > + free(line); > + fclose(f); > + return status; > +} > + > static void free_regexes(struct regex_list *regexes) > { > size_t i; > @@ -272,6 +325,8 @@ bool parse_options(int argc, char **argv, > {"use-watchdog", no_argument, NULL, OPT_WATCHDOG}, > {"piglit-style-dmesg", no_argument, NULL, OPT_PIGLIT_DMESG}, > {"dmesg-warn-level", required_argument, NULL, OPT_DMESG_WARN_LEVEL}, > + {"blacklist", required_argument, NULL, OPT_BLACKLIST}, > + {"list-all", no_argument, NULL, OPT_LIST_ALL}, > { 0, 0, 0, 0}, > }; > > @@ -281,7 +336,7 @@ bool parse_options(int argc, char **argv, > > settings->dmesg_warn_level = -1; > > - while ((c = getopt_long(argc, argv, "hn:dt:x:sl:om", long_options, NULL)) != -1) { > + while ((c = getopt_long(argc, argv, "hn:dt:x:sl:omb:L", long_options, NULL)) != -1) { > switch (c) { > case OPT_HELP: > usage(NULL, stdout); > @@ -342,6 +397,13 @@ bool parse_options(int argc, char **argv, > case OPT_DMESG_WARN_LEVEL: > settings->dmesg_warn_level = atoi(optarg); > break; > + case OPT_BLACKLIST: > + if (!parse_blacklist(&settings->exclude_regexes, absolute_path(optarg))) > + goto error; > + break; > + case OPT_LIST_ALL: > + settings->list_all = true; > + break; > case '?': > usage(NULL, stderr); > goto error; > @@ -354,20 +416,39 @@ bool parse_options(int argc, char **argv, > if (settings->dmesg_warn_level < 0) > settings->dmesg_warn_level = 4; /* KERN_WARN */ > > - switch (argc - optind) { > - case 2: > - settings->test_root = absolute_path(argv[optind]); > - ++optind; > - /* fallthrough */ > - case 1: > - settings->results_path = absolute_path(argv[optind]); > - break; > - case 0: > - usage("Results-path missing", stderr); > - goto error; > - default: > - usage("Extra arguments after results-path", stderr); > - goto error; > + if (settings->list_all) { /* --list-all doesn't requrie results path */ Typo, require > + switch (argc - optind) { > + case 1: > + settings->test_root = absolute_path(argv[optind]); > + ++optind; > + /* fallthrough */ > + case 0: > + break; > + default: > + usage("Too many arguments for --list-all", stderr); > + goto error; > + } > + } else { > + switch (argc - optind) { > + case 2: > + settings->test_root = absolute_path(argv[optind]); > + ++optind; > + /* fallthrough */ > + case 1: > + settings->results_path = absolute_path(argv[optind]); > + break; > + case 0: > + usage("Results-path missing", stderr); > + goto error; > + default: > + usage("Extra arguments after results-path", stderr); > + goto error; > + } > + if (!settings->name) { > + char *name = strdup(settings->results_path); > + settings->name = strdup(basename(name)); > + free(name); > + } TODO for later: Refactor this duplicated switch. Looks good otherwise, but nack for merging as of yet, because: While performance is better: # time ./scripts/run-tests.sh -l ....... real 0m5.188s user 0m3.890s sys 0m1.354s # time build/runner/igt_runner -L build/tests ....... real 0m3.065s user 0m2.222s sys 0m0.895s (I won't compare listing with blacklist processing, that's a horrible shell kludge) the results are different: original-kludge.txt - blacklist-processed testlist with horrible shell kludge runner.txt - igt_runner -L -b tests/intel-ci/blacklist.txt build/tests, sorted and downcased to compare apples to apples diff -u original-kludge.txt runner.txt +igt@gem_exec_lut_handle +igt@gem_fd_exhaustion +igt@gem_gtt_hog +igt@gem_gtt_speed +igt@gem_lut_handle +igt@gem_ring_sync_loop Those are blacklisted with e.g. igt@gem_exec_lut_handle(@.*)? Please check whether the fault is glib regex being unable to process that or our usage of it. -- Petri Latvala _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH v2] runner: add --list-all and --blacklist 2019-06-14 13:24 [igt-dev] [PATCH] runner: add --list-all and --blacklist Oleg Vasilev 2019-06-14 13:43 ` [igt-dev] ✗ Fi.CI.BAT: failure for " Patchwork 2019-06-14 14:28 ` [igt-dev] [PATCH] " Petri Latvala @ 2019-06-17 11:49 ` Oleg Vasilev 2019-06-17 12:41 ` Petri Latvala 2019-06-17 13:41 ` [igt-dev] [PATCH v3] " Oleg Vasilev 2019-06-17 14:14 ` [igt-dev] ✓ Fi.CI.BAT: success for runner: add --list-all and --blacklist (rev2) Patchwork ` (6 subsequent siblings) 9 siblings, 2 replies; 17+ messages in thread From: Oleg Vasilev @ 2019-06-17 11:49 UTC (permalink / raw) To: igt-dev; +Cc: Petri Latvala Currently, runner already collects all subtest names into job_list. --list-all allows to output it to stdout. --blacklist option takes a filename as an argument and adds all regexes from that file to the exclusion list. v2: - Update exclude/include regex matches for tests without subtests to be matched with pigtit-like name (Petri) - Replace relative paths with those formatted with testdatadir (Petri) - Minor codestyle changes Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com> --- runner/job_list.c | 27 ++++++- runner/job_list.h | 1 + runner/runner.c | 5 ++ runner/runner_tests.c | 18 ++++- runner/settings.c | 117 +++++++++++++++++++++++----- runner/settings.h | 1 + runner/testdata/meson.build | 5 ++ runner/testdata/test-blacklist.txt | 2 + runner/testdata/test-blacklist2.txt | 2 + 9 files changed, 154 insertions(+), 24 deletions(-) create mode 100644 runner/testdata/test-blacklist.txt create mode 100644 runner/testdata/test-blacklist2.txt diff --git a/runner/job_list.c b/runner/job_list.c index 4a16742f..e78e0358 100644 --- a/runner/job_list.c +++ b/runner/job_list.c @@ -111,11 +111,16 @@ static void add_subtests(struct job_list *job_list, struct settings *settings, fprintf(stderr, "popen error when executing %s: %s\n", binary, strerror(errno)); } else if (WIFEXITED(s)) { if (WEXITSTATUS(s) == IGT_EXIT_INVALID) { + char piglitname[256]; + generate_piglit_name(binary, NULL, + piglitname, sizeof(piglitname)); + /* No subtests on this one */ - if (exclude && exclude->size && matches_any(binary, exclude)) { + if (exclude && exclude->size && + matches_any(piglitname, exclude)) { return; } - if (!include || !include->size || matches_any(binary, include)) { + if (!include || !include->size || matches_any(piglitname, include)) { add_job_list_entry(job_list, strdup(binary), NULL, 0); return; } @@ -291,6 +296,24 @@ static bool job_list_from_test_list(struct job_list *job_list, return any; } +void list_all_tests(struct job_list* lst) +{ + for (size_t test_idx = 0; test_idx < lst->size; ++test_idx){ + struct job_list_entry* current_entry = lst->entries+test_idx; + if (current_entry->subtest_count==0) { + printf("igt@%s\n", current_entry->binary); + continue; + } + for (size_t subtest_idx = 0; + subtest_idx < current_entry->subtest_count; + ++subtest_idx) { + char *subtest_name = current_entry->subtests[subtest_idx]; + printf("igt@%s@%s\n", current_entry->binary, subtest_name); + } + } +} + + static char *lowercase(const char *str) { char *ret = malloc(strlen(str) + 1); diff --git a/runner/job_list.h b/runner/job_list.h index f8bbbddc..cee4bff6 100644 --- a/runner/job_list.h +++ b/runner/job_list.h @@ -36,5 +36,6 @@ bool create_job_list(struct job_list *job_list, struct settings *settings); bool serialize_job_list(struct job_list *job_list, struct settings *settings); bool read_job_list(struct job_list *job_list, int dirfd); +void list_all_tests(struct job_list* lst); #endif diff --git a/runner/runner.c b/runner/runner.c index e1a6ccba..4855ad64 100644 --- a/runner/runner.c +++ b/runner/runner.c @@ -24,6 +24,11 @@ int main(int argc, char **argv) return 1; } + if (settings.list_all) { + list_all_tests(&job_list); + return 0; + } + if (!initialize_execute_state(&state, &settings, &job_list)) { return 1; } diff --git a/runner/runner_tests.c b/runner/runner_tests.c index c09cda70..39d4a078 100644 --- a/runner/runner_tests.c +++ b/runner/runner_tests.c @@ -378,6 +378,7 @@ igt_main } igt_subtest("parse-all-settings") { + char blacklist_name[PATH_MAX], blacklist2_name[PATH_MAX]; const char *argv[] = { "runner", "-n", "foo", "--abort-on-monitored-error=taint,lockdep", @@ -388,6 +389,8 @@ igt_main "-t", "pattern2", "-x", "xpattern1", "-x", "xpattern2", + "-b", blacklist_name, + "--blacklist", blacklist2_name, "-s", "-l", "verbose", "--overwrite", @@ -401,6 +404,9 @@ igt_main "path-to-results", }; + sprintf(blacklist_name, "%s/test-blacklist.txt", testdatadir); + sprintf(blacklist2_name, "%s/test-blacklist2.txt", testdatadir); + igt_assert(parse_options(ARRAY_SIZE(argv), (char**)argv, settings)); igt_assert_eq(settings->abort_mask, ABORT_TAINT | ABORT_LOCKDEP); @@ -410,9 +416,11 @@ igt_main igt_assert_eq(settings->include_regexes.size, 2); igt_assert_eqstr(settings->include_regexes.regex_strings[0], "pattern1"); igt_assert_eqstr(settings->include_regexes.regex_strings[1], "pattern2"); - igt_assert_eq(settings->exclude_regexes.size, 2); + igt_assert_eq(settings->exclude_regexes.size, 4); igt_assert_eqstr(settings->exclude_regexes.regex_strings[0], "xpattern1"); igt_assert_eqstr(settings->exclude_regexes.regex_strings[1], "xpattern2"); + igt_assert_eqstr(settings->exclude_regexes.regex_strings[2], "xpattern3"); /* From blacklist */ + igt_assert_eqstr(settings->exclude_regexes.regex_strings[3], "xpattern4"); /* From blacklist2 */ igt_assert(settings->sync); igt_assert_eq(settings->log_level, LOG_LEVEL_VERBOSE); igt_assert(settings->overwrite); @@ -426,6 +434,14 @@ igt_main igt_assert(settings->piglit_style_dmesg); igt_assert_eq(settings->dmesg_warn_level, 3); } + igt_subtest("parse-list-all") { + const char *argv[] = { "runner", + "--list-all", + "test-root-dir"}; + + igt_assert(parse_options(ARRAY_SIZE(argv), (char**)argv, settings)); + igt_assert_eq(settings->list_all, 1); + } igt_subtest("dmesg-warn-level-inferred") { const char *argv[] = { "runner", diff --git a/runner/settings.c b/runner/settings.c index ad38ae8d..f4b4af90 100644 --- a/runner/settings.c +++ b/runner/settings.c @@ -1,5 +1,6 @@ #include "settings.h" +#include <ctype.h> #include <errno.h> #include <fcntl.h> #include <getopt.h> @@ -30,6 +31,8 @@ enum { OPT_MULTIPLE = 'm', OPT_TIMEOUT = 'c', OPT_WATCHDOG = 'g', + OPT_BLACKLIST = 'b', + OPT_LIST_ALL = 'L', }; static struct { @@ -117,7 +120,8 @@ static bool parse_abort_conditions(struct settings *settings, const char *optarg } static const char *usage_str = - "usage: runner [options] [test_root] results-path\n\n" + "usage: runner [options] [test_root] results-path\n" + " or: runner --list-all [options] [test_root] \n\n" "Options:\n" " Piglit compatible:\n" " -h, --help Show this help message and exit\n" @@ -172,6 +176,10 @@ static const char *usage_str = " (longer) filter list means the test result should\n" " change. KERN_NOTICE dmesg level is treated as warn,\n" " unless overridden with --dmesg-warn-level.\n" + " -b, --blacklist FILENAME\n" + " Exclude all test matching to regexes from FILENAME\n" + " (can be used more than once)\n" + " -L, --list-all List all matching subtests instead of running\n" " [test_root] Directory that contains the IGT tests. The environment\n" " variable IGT_TEST_ROOT will be used if set, overriding\n" " this option if given.\n" @@ -213,6 +221,50 @@ static bool add_regex(struct regex_list *list, char *new) return true; } +static bool parse_blacklist(struct regex_list *exclude_regexes, char *blacklist_filename) +{ + FILE *f; + char *line = NULL; + size_t line_len = 0; + bool status; + + if ((f = fopen(blacklist_filename, "r")) == NULL) { + fprintf(stderr, "Cannot open blacklist file %s\n", blacklist_filename); + return false; + } + while (1) { + size_t str_size = 0, idx = 0; + + if (getline(&line, &line_len, f) == -1) { + if (errno == EINTR) + continue; + else + break; + } + + while (true) { + if(line[idx]=='\n' || + line[idx]=='#' || /* # starts a comment */ + line[idx]=='\0') + break; + if (!isspace(line[idx])) + str_size = idx+1; + idx++; + } + if (str_size > 0) { + char * test_regex = strndup(line, str_size); + status = add_regex(exclude_regexes, test_regex); + if(!status){ + break; + } + } + } + + free(line); + fclose(f); + return status; +} + static void free_regexes(struct regex_list *regexes) { size_t i; @@ -272,6 +324,8 @@ bool parse_options(int argc, char **argv, {"use-watchdog", no_argument, NULL, OPT_WATCHDOG}, {"piglit-style-dmesg", no_argument, NULL, OPT_PIGLIT_DMESG}, {"dmesg-warn-level", required_argument, NULL, OPT_DMESG_WARN_LEVEL}, + {"blacklist", required_argument, NULL, OPT_BLACKLIST}, + {"list-all", no_argument, NULL, OPT_LIST_ALL}, { 0, 0, 0, 0}, }; @@ -281,7 +335,7 @@ bool parse_options(int argc, char **argv, settings->dmesg_warn_level = -1; - while ((c = getopt_long(argc, argv, "hn:dt:x:sl:om", long_options, NULL)) != -1) { + while ((c = getopt_long(argc, argv, "hn:dt:x:sl:omb:L", long_options, NULL)) != -1) { switch (c) { case OPT_HELP: usage(NULL, stdout); @@ -342,6 +396,13 @@ bool parse_options(int argc, char **argv, case OPT_DMESG_WARN_LEVEL: settings->dmesg_warn_level = atoi(optarg); break; + case OPT_BLACKLIST: + if (!parse_blacklist(&settings->exclude_regexes, absolute_path(optarg))) + goto error; + break; + case OPT_LIST_ALL: + settings->list_all = true; + break; case '?': usage(NULL, stderr); goto error; @@ -354,20 +415,39 @@ bool parse_options(int argc, char **argv, if (settings->dmesg_warn_level < 0) settings->dmesg_warn_level = 4; /* KERN_WARN */ - switch (argc - optind) { - case 2: - settings->test_root = absolute_path(argv[optind]); - ++optind; - /* fallthrough */ - case 1: - settings->results_path = absolute_path(argv[optind]); - break; - case 0: - usage("Results-path missing", stderr); - goto error; - default: - usage("Extra arguments after results-path", stderr); - goto error; + if (settings->list_all) { /* --list-all doesn't require results path */ + switch (argc - optind) { + case 1: + settings->test_root = absolute_path(argv[optind]); + ++optind; + /* fallthrough */ + case 0: + break; + default: + usage("Too many arguments for --list-all", stderr); + goto error; + } + } else { + switch (argc - optind) { + case 2: + settings->test_root = absolute_path(argv[optind]); + ++optind; + /* fallthrough */ + case 1: + settings->results_path = absolute_path(argv[optind]); + break; + case 0: + usage("Results-path missing", stderr); + goto error; + default: + usage("Extra arguments after results-path", stderr); + goto error; + } + if (!settings->name) { + char *name = strdup(settings->results_path); + settings->name = strdup(basename(name)); + free(name); + } } if ((env_test_root = getenv("IGT_TEST_ROOT")) != NULL) { @@ -380,11 +460,6 @@ bool parse_options(int argc, char **argv, goto error; } - if (!settings->name) { - char *name = strdup(settings->results_path); - settings->name = strdup(basename(name)); - free(name); - } return true; diff --git a/runner/settings.h b/runner/settings.h index 0a1ee08d..6dcfa8c5 100644 --- a/runner/settings.h +++ b/runner/settings.h @@ -43,6 +43,7 @@ struct settings { char *results_path; bool piglit_style_dmesg; int dmesg_warn_level; + bool list_all; }; /** diff --git a/runner/testdata/meson.build b/runner/testdata/meson.build index 011eff8e..2456f82a 100644 --- a/runner/testdata/meson.build +++ b/runner/testdata/meson.build @@ -12,6 +12,11 @@ foreach prog : testdata_progs install : false) endforeach +configure_file(input : 'test-blacklist.txt', + output : 'test-blacklist.txt', copy : true) +configure_file(input : 'test-blacklist2.txt', + output : 'test-blacklist2.txt', copy : true) + testdata_list = custom_target('testdata_testlist', output : 'test-list.txt', command : [ gen_testlist, '@OUTPUT@', testdata_progs ], diff --git a/runner/testdata/test-blacklist.txt b/runner/testdata/test-blacklist.txt new file mode 100644 index 00000000..6b09ae5c --- /dev/null +++ b/runner/testdata/test-blacklist.txt @@ -0,0 +1,2 @@ +xpattern3 # Comment 1 +# Comment 2 diff --git a/runner/testdata/test-blacklist2.txt b/runner/testdata/test-blacklist2.txt new file mode 100644 index 00000000..d0f6e612 --- /dev/null +++ b/runner/testdata/test-blacklist2.txt @@ -0,0 +1,2 @@ + +xpattern4 -- 2.21.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH v2] runner: add --list-all and --blacklist 2019-06-17 11:49 ` [igt-dev] [PATCH v2] " Oleg Vasilev @ 2019-06-17 12:41 ` Petri Latvala 2019-06-17 13:41 ` [igt-dev] [PATCH v3] " Oleg Vasilev 1 sibling, 0 replies; 17+ messages in thread From: Petri Latvala @ 2019-06-17 12:41 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev On Mon, Jun 17, 2019 at 02:49:37PM +0300, Oleg Vasilev wrote: > Currently, runner already collects all subtest names into job_list. > --list-all allows to output it to stdout. > > --blacklist option takes a filename as an argument and adds all regexes > from that file to the exclusion list. > > v2: > - Update exclude/include regex matches for tests without > subtests to be matched with pigtit-like name (Petri) > - Replace relative paths with those formatted with testdatadir (Petri) > - Minor codestyle changes > > Cc: Petri Latvala <petri.latvala@intel.com> > Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com> > --- > runner/job_list.c | 27 ++++++- > runner/job_list.h | 1 + > runner/runner.c | 5 ++ > runner/runner_tests.c | 18 ++++- > runner/settings.c | 117 +++++++++++++++++++++++----- > runner/settings.h | 1 + > runner/testdata/meson.build | 5 ++ > runner/testdata/test-blacklist.txt | 2 + > runner/testdata/test-blacklist2.txt | 2 + > 9 files changed, 154 insertions(+), 24 deletions(-) > create mode 100644 runner/testdata/test-blacklist.txt > create mode 100644 runner/testdata/test-blacklist2.txt > > diff --git a/runner/job_list.c b/runner/job_list.c > index 4a16742f..e78e0358 100644 > --- a/runner/job_list.c > +++ b/runner/job_list.c > @@ -111,11 +111,16 @@ static void add_subtests(struct job_list *job_list, struct settings *settings, > fprintf(stderr, "popen error when executing %s: %s\n", binary, strerror(errno)); > } else if (WIFEXITED(s)) { > if (WEXITSTATUS(s) == IGT_EXIT_INVALID) { > + char piglitname[256]; > + generate_piglit_name(binary, NULL, > + piglitname, sizeof(piglitname)); > + > /* No subtests on this one */ > - if (exclude && exclude->size && matches_any(binary, exclude)) { > + if (exclude && exclude->size && > + matches_any(piglitname, exclude)) { > return; > } > - if (!include || !include->size || matches_any(binary, include)) { > + if (!include || !include->size || matches_any(piglitname, include)) { > add_job_list_entry(job_list, strdup(binary), NULL, 0); > return; > } Well that makes sense! > @@ -291,6 +296,24 @@ static bool job_list_from_test_list(struct job_list *job_list, > return any; > } > > +void list_all_tests(struct job_list* lst) > +{ > + for (size_t test_idx = 0; test_idx < lst->size; ++test_idx){ > + struct job_list_entry* current_entry = lst->entries+test_idx; > + if (current_entry->subtest_count==0) { > + printf("igt@%s\n", current_entry->binary); > + continue; > + } > + for (size_t subtest_idx = 0; > + subtest_idx < current_entry->subtest_count; > + ++subtest_idx) { > + char *subtest_name = current_entry->subtests[subtest_idx]; > + printf("igt@%s@%s\n", current_entry->binary, subtest_name); > + } Print that in lowercase like piglit does. Oh, and you need to disable multiple-mode if list-all is set. Otherwise -t kms -L will print wrong things. Can be left for later though... With those changes (multiple-mode change optional at this point), Reviewed-by: Petri Latvala <petri.latvala@intel.com> _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH v3] runner: add --list-all and --blacklist 2019-06-17 11:49 ` [igt-dev] [PATCH v2] " Oleg Vasilev 2019-06-17 12:41 ` Petri Latvala @ 2019-06-17 13:41 ` Oleg Vasilev 2019-06-18 8:11 ` Petri Latvala 1 sibling, 1 reply; 17+ messages in thread From: Oleg Vasilev @ 2019-06-17 13:41 UTC (permalink / raw) To: igt-dev; +Cc: Petri Latvala Currently, runner already collects all subtest names into job_list. --list-all allows to output it to stdout. --blacklist option takes a filename as an argument and adds all regexes from that file to the exclusion list. v2: - Update exclude/include regex matches for tests without subtests to be matched with pigtit-like name (Petri) - Replace relative paths with those formatted with testdatadir (Petri) - Minor codestyle changes v3: - Print test names in lowercase (Petri) Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com> --- runner/job_list.c | 36 ++++++++- runner/job_list.h | 1 + runner/runner.c | 5 ++ runner/runner_tests.c | 18 ++++- runner/settings.c | 117 +++++++++++++++++++++++----- runner/settings.h | 1 + runner/testdata/meson.build | 5 ++ runner/testdata/test-blacklist.txt | 2 + runner/testdata/test-blacklist2.txt | 2 + 9 files changed, 163 insertions(+), 24 deletions(-) create mode 100644 runner/testdata/test-blacklist.txt create mode 100644 runner/testdata/test-blacklist2.txt diff --git a/runner/job_list.c b/runner/job_list.c index 4a16742f..8e5233f5 100644 --- a/runner/job_list.c +++ b/runner/job_list.c @@ -111,11 +111,16 @@ static void add_subtests(struct job_list *job_list, struct settings *settings, fprintf(stderr, "popen error when executing %s: %s\n", binary, strerror(errno)); } else if (WIFEXITED(s)) { if (WEXITSTATUS(s) == IGT_EXIT_INVALID) { + char piglitname[256]; + generate_piglit_name(binary, NULL, + piglitname, sizeof(piglitname)); + /* No subtests on this one */ - if (exclude && exclude->size && matches_any(binary, exclude)) { + if (exclude && exclude->size && + matches_any(piglitname, exclude)) { return; } - if (!include || !include->size || matches_any(binary, include)) { + if (!include || !include->size || matches_any(piglitname, include)) { add_job_list_entry(job_list, strdup(binary), NULL, 0); return; } @@ -291,6 +296,33 @@ static bool job_list_from_test_list(struct job_list *job_list, return any; } +void str_to_lower(char* str) +{ + for (int i = 0; str[i]; i++) { + str[i] = tolower(str[i]); + } +} + +void list_all_tests(struct job_list* lst) +{ + for (size_t test_idx = 0; test_idx < lst->size; ++test_idx){ + struct job_list_entry* current_entry = lst->entries+test_idx; + str_to_lower(current_entry->binary); + if (current_entry->subtest_count==0) { + printf("igt@%s\n", current_entry->binary); + continue; + } + for (size_t subtest_idx = 0; + subtest_idx < current_entry->subtest_count; + ++subtest_idx) { + char *subtest_name = current_entry->subtests[subtest_idx]; + str_to_lower(subtest_name); + printf("igt@%s@%s\n", current_entry->binary, subtest_name); + } + } +} + + static char *lowercase(const char *str) { char *ret = malloc(strlen(str) + 1); diff --git a/runner/job_list.h b/runner/job_list.h index f8bbbddc..cee4bff6 100644 --- a/runner/job_list.h +++ b/runner/job_list.h @@ -36,5 +36,6 @@ bool create_job_list(struct job_list *job_list, struct settings *settings); bool serialize_job_list(struct job_list *job_list, struct settings *settings); bool read_job_list(struct job_list *job_list, int dirfd); +void list_all_tests(struct job_list* lst); #endif diff --git a/runner/runner.c b/runner/runner.c index e1a6ccba..4855ad64 100644 --- a/runner/runner.c +++ b/runner/runner.c @@ -24,6 +24,11 @@ int main(int argc, char **argv) return 1; } + if (settings.list_all) { + list_all_tests(&job_list); + return 0; + } + if (!initialize_execute_state(&state, &settings, &job_list)) { return 1; } diff --git a/runner/runner_tests.c b/runner/runner_tests.c index c09cda70..39d4a078 100644 --- a/runner/runner_tests.c +++ b/runner/runner_tests.c @@ -378,6 +378,7 @@ igt_main } igt_subtest("parse-all-settings") { + char blacklist_name[PATH_MAX], blacklist2_name[PATH_MAX]; const char *argv[] = { "runner", "-n", "foo", "--abort-on-monitored-error=taint,lockdep", @@ -388,6 +389,8 @@ igt_main "-t", "pattern2", "-x", "xpattern1", "-x", "xpattern2", + "-b", blacklist_name, + "--blacklist", blacklist2_name, "-s", "-l", "verbose", "--overwrite", @@ -401,6 +404,9 @@ igt_main "path-to-results", }; + sprintf(blacklist_name, "%s/test-blacklist.txt", testdatadir); + sprintf(blacklist2_name, "%s/test-blacklist2.txt", testdatadir); + igt_assert(parse_options(ARRAY_SIZE(argv), (char**)argv, settings)); igt_assert_eq(settings->abort_mask, ABORT_TAINT | ABORT_LOCKDEP); @@ -410,9 +416,11 @@ igt_main igt_assert_eq(settings->include_regexes.size, 2); igt_assert_eqstr(settings->include_regexes.regex_strings[0], "pattern1"); igt_assert_eqstr(settings->include_regexes.regex_strings[1], "pattern2"); - igt_assert_eq(settings->exclude_regexes.size, 2); + igt_assert_eq(settings->exclude_regexes.size, 4); igt_assert_eqstr(settings->exclude_regexes.regex_strings[0], "xpattern1"); igt_assert_eqstr(settings->exclude_regexes.regex_strings[1], "xpattern2"); + igt_assert_eqstr(settings->exclude_regexes.regex_strings[2], "xpattern3"); /* From blacklist */ + igt_assert_eqstr(settings->exclude_regexes.regex_strings[3], "xpattern4"); /* From blacklist2 */ igt_assert(settings->sync); igt_assert_eq(settings->log_level, LOG_LEVEL_VERBOSE); igt_assert(settings->overwrite); @@ -426,6 +434,14 @@ igt_main igt_assert(settings->piglit_style_dmesg); igt_assert_eq(settings->dmesg_warn_level, 3); } + igt_subtest("parse-list-all") { + const char *argv[] = { "runner", + "--list-all", + "test-root-dir"}; + + igt_assert(parse_options(ARRAY_SIZE(argv), (char**)argv, settings)); + igt_assert_eq(settings->list_all, 1); + } igt_subtest("dmesg-warn-level-inferred") { const char *argv[] = { "runner", diff --git a/runner/settings.c b/runner/settings.c index ad38ae8d..f4b4af90 100644 --- a/runner/settings.c +++ b/runner/settings.c @@ -1,5 +1,6 @@ #include "settings.h" +#include <ctype.h> #include <errno.h> #include <fcntl.h> #include <getopt.h> @@ -30,6 +31,8 @@ enum { OPT_MULTIPLE = 'm', OPT_TIMEOUT = 'c', OPT_WATCHDOG = 'g', + OPT_BLACKLIST = 'b', + OPT_LIST_ALL = 'L', }; static struct { @@ -117,7 +120,8 @@ static bool parse_abort_conditions(struct settings *settings, const char *optarg } static const char *usage_str = - "usage: runner [options] [test_root] results-path\n\n" + "usage: runner [options] [test_root] results-path\n" + " or: runner --list-all [options] [test_root] \n\n" "Options:\n" " Piglit compatible:\n" " -h, --help Show this help message and exit\n" @@ -172,6 +176,10 @@ static const char *usage_str = " (longer) filter list means the test result should\n" " change. KERN_NOTICE dmesg level is treated as warn,\n" " unless overridden with --dmesg-warn-level.\n" + " -b, --blacklist FILENAME\n" + " Exclude all test matching to regexes from FILENAME\n" + " (can be used more than once)\n" + " -L, --list-all List all matching subtests instead of running\n" " [test_root] Directory that contains the IGT tests. The environment\n" " variable IGT_TEST_ROOT will be used if set, overriding\n" " this option if given.\n" @@ -213,6 +221,50 @@ static bool add_regex(struct regex_list *list, char *new) return true; } +static bool parse_blacklist(struct regex_list *exclude_regexes, char *blacklist_filename) +{ + FILE *f; + char *line = NULL; + size_t line_len = 0; + bool status; + + if ((f = fopen(blacklist_filename, "r")) == NULL) { + fprintf(stderr, "Cannot open blacklist file %s\n", blacklist_filename); + return false; + } + while (1) { + size_t str_size = 0, idx = 0; + + if (getline(&line, &line_len, f) == -1) { + if (errno == EINTR) + continue; + else + break; + } + + while (true) { + if(line[idx]=='\n' || + line[idx]=='#' || /* # starts a comment */ + line[idx]=='\0') + break; + if (!isspace(line[idx])) + str_size = idx+1; + idx++; + } + if (str_size > 0) { + char * test_regex = strndup(line, str_size); + status = add_regex(exclude_regexes, test_regex); + if(!status){ + break; + } + } + } + + free(line); + fclose(f); + return status; +} + static void free_regexes(struct regex_list *regexes) { size_t i; @@ -272,6 +324,8 @@ bool parse_options(int argc, char **argv, {"use-watchdog", no_argument, NULL, OPT_WATCHDOG}, {"piglit-style-dmesg", no_argument, NULL, OPT_PIGLIT_DMESG}, {"dmesg-warn-level", required_argument, NULL, OPT_DMESG_WARN_LEVEL}, + {"blacklist", required_argument, NULL, OPT_BLACKLIST}, + {"list-all", no_argument, NULL, OPT_LIST_ALL}, { 0, 0, 0, 0}, }; @@ -281,7 +335,7 @@ bool parse_options(int argc, char **argv, settings->dmesg_warn_level = -1; - while ((c = getopt_long(argc, argv, "hn:dt:x:sl:om", long_options, NULL)) != -1) { + while ((c = getopt_long(argc, argv, "hn:dt:x:sl:omb:L", long_options, NULL)) != -1) { switch (c) { case OPT_HELP: usage(NULL, stdout); @@ -342,6 +396,13 @@ bool parse_options(int argc, char **argv, case OPT_DMESG_WARN_LEVEL: settings->dmesg_warn_level = atoi(optarg); break; + case OPT_BLACKLIST: + if (!parse_blacklist(&settings->exclude_regexes, absolute_path(optarg))) + goto error; + break; + case OPT_LIST_ALL: + settings->list_all = true; + break; case '?': usage(NULL, stderr); goto error; @@ -354,20 +415,39 @@ bool parse_options(int argc, char **argv, if (settings->dmesg_warn_level < 0) settings->dmesg_warn_level = 4; /* KERN_WARN */ - switch (argc - optind) { - case 2: - settings->test_root = absolute_path(argv[optind]); - ++optind; - /* fallthrough */ - case 1: - settings->results_path = absolute_path(argv[optind]); - break; - case 0: - usage("Results-path missing", stderr); - goto error; - default: - usage("Extra arguments after results-path", stderr); - goto error; + if (settings->list_all) { /* --list-all doesn't require results path */ + switch (argc - optind) { + case 1: + settings->test_root = absolute_path(argv[optind]); + ++optind; + /* fallthrough */ + case 0: + break; + default: + usage("Too many arguments for --list-all", stderr); + goto error; + } + } else { + switch (argc - optind) { + case 2: + settings->test_root = absolute_path(argv[optind]); + ++optind; + /* fallthrough */ + case 1: + settings->results_path = absolute_path(argv[optind]); + break; + case 0: + usage("Results-path missing", stderr); + goto error; + default: + usage("Extra arguments after results-path", stderr); + goto error; + } + if (!settings->name) { + char *name = strdup(settings->results_path); + settings->name = strdup(basename(name)); + free(name); + } } if ((env_test_root = getenv("IGT_TEST_ROOT")) != NULL) { @@ -380,11 +460,6 @@ bool parse_options(int argc, char **argv, goto error; } - if (!settings->name) { - char *name = strdup(settings->results_path); - settings->name = strdup(basename(name)); - free(name); - } return true; diff --git a/runner/settings.h b/runner/settings.h index 0a1ee08d..6dcfa8c5 100644 --- a/runner/settings.h +++ b/runner/settings.h @@ -43,6 +43,7 @@ struct settings { char *results_path; bool piglit_style_dmesg; int dmesg_warn_level; + bool list_all; }; /** diff --git a/runner/testdata/meson.build b/runner/testdata/meson.build index 011eff8e..2456f82a 100644 --- a/runner/testdata/meson.build +++ b/runner/testdata/meson.build @@ -12,6 +12,11 @@ foreach prog : testdata_progs install : false) endforeach +configure_file(input : 'test-blacklist.txt', + output : 'test-blacklist.txt', copy : true) +configure_file(input : 'test-blacklist2.txt', + output : 'test-blacklist2.txt', copy : true) + testdata_list = custom_target('testdata_testlist', output : 'test-list.txt', command : [ gen_testlist, '@OUTPUT@', testdata_progs ], diff --git a/runner/testdata/test-blacklist.txt b/runner/testdata/test-blacklist.txt new file mode 100644 index 00000000..6b09ae5c --- /dev/null +++ b/runner/testdata/test-blacklist.txt @@ -0,0 +1,2 @@ +xpattern3 # Comment 1 +# Comment 2 diff --git a/runner/testdata/test-blacklist2.txt b/runner/testdata/test-blacklist2.txt new file mode 100644 index 00000000..d0f6e612 --- /dev/null +++ b/runner/testdata/test-blacklist2.txt @@ -0,0 +1,2 @@ + +xpattern4 -- 2.21.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH v3] runner: add --list-all and --blacklist 2019-06-17 13:41 ` [igt-dev] [PATCH v3] " Oleg Vasilev @ 2019-06-18 8:11 ` Petri Latvala 2019-06-18 9:07 ` [igt-dev] [PATCH v4] " Oleg Vasilev 0 siblings, 1 reply; 17+ messages in thread From: Petri Latvala @ 2019-06-18 8:11 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev On Mon, Jun 17, 2019 at 04:41:33PM +0300, Oleg Vasilev wrote: > Currently, runner already collects all subtest names into job_list. > --list-all allows to output it to stdout. > > --blacklist option takes a filename as an argument and adds all regexes > from that file to the exclusion list. > > v2: > - Update exclude/include regex matches for tests without > subtests to be matched with pigtit-like name (Petri) > - Replace relative paths with those formatted with testdatadir (Petri) > - Minor codestyle changes > > v3: > - Print test names in lowercase (Petri) > > Cc: Petri Latvala <petri.latvala@intel.com> > Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com> > --- > runner/job_list.c | 36 ++++++++- > runner/job_list.h | 1 + > runner/runner.c | 5 ++ > runner/runner_tests.c | 18 ++++- > runner/settings.c | 117 +++++++++++++++++++++++----- > runner/settings.h | 1 + > runner/testdata/meson.build | 5 ++ > runner/testdata/test-blacklist.txt | 2 + > runner/testdata/test-blacklist2.txt | 2 + > 9 files changed, 163 insertions(+), 24 deletions(-) > create mode 100644 runner/testdata/test-blacklist.txt > create mode 100644 runner/testdata/test-blacklist2.txt > > diff --git a/runner/job_list.c b/runner/job_list.c > index 4a16742f..8e5233f5 100644 > --- a/runner/job_list.c > +++ b/runner/job_list.c > @@ -111,11 +111,16 @@ static void add_subtests(struct job_list *job_list, struct settings *settings, > fprintf(stderr, "popen error when executing %s: %s\n", binary, strerror(errno)); > } else if (WIFEXITED(s)) { > if (WEXITSTATUS(s) == IGT_EXIT_INVALID) { > + char piglitname[256]; > + generate_piglit_name(binary, NULL, > + piglitname, sizeof(piglitname)); > + > /* No subtests on this one */ > - if (exclude && exclude->size && matches_any(binary, exclude)) { > + if (exclude && exclude->size && > + matches_any(piglitname, exclude)) { > return; > } > - if (!include || !include->size || matches_any(binary, include)) { > + if (!include || !include->size || matches_any(piglitname, include)) { > add_job_list_entry(job_list, strdup(binary), NULL, 0); > return; > } > @@ -291,6 +296,33 @@ static bool job_list_from_test_list(struct job_list *job_list, > return any; > } > > +void str_to_lower(char* str) > +{ > + for (int i = 0; str[i]; i++) { > + str[i] = tolower(str[i]); > + } > +} > + > +void list_all_tests(struct job_list* lst) > +{ > + for (size_t test_idx = 0; test_idx < lst->size; ++test_idx){ > + struct job_list_entry* current_entry = lst->entries+test_idx; > + str_to_lower(current_entry->binary); > + if (current_entry->subtest_count==0) { > + printf("igt@%s\n", current_entry->binary); > + continue; > + } > + for (size_t subtest_idx = 0; > + subtest_idx < current_entry->subtest_count; > + ++subtest_idx) { > + char *subtest_name = current_entry->subtests[subtest_idx]; > + str_to_lower(subtest_name); > + printf("igt@%s@%s\n", current_entry->binary, subtest_name); > + } > + } > +} > + > + > static char *lowercase(const char *str) > { There's a lowercasing helper function already, right here. -- Petri Latvala _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH v4] runner: add --list-all and --blacklist 2019-06-18 8:11 ` Petri Latvala @ 2019-06-18 9:07 ` Oleg Vasilev 2019-06-18 9:26 ` Petri Latvala 0 siblings, 1 reply; 17+ messages in thread From: Oleg Vasilev @ 2019-06-18 9:07 UTC (permalink / raw) To: igt-dev; +Cc: Petri Latvala Currently, runner already collects all subtest names into job_list. --list-all allows to output it to stdout. --blacklist option takes a filename as an argument and adds all regexes from that file to the exclusion list. v2: - Update exclude/include regex matches for tests without subtests to be matched with pigtit-like name (Petri) - Replace relative paths with those formatted with testdatadir (Petri) - Minor codestyle changes v3: - Print test names in lowercase (Petri) v4: - Replaced custom str_to_lower with generate_piglit_name (Petri) - Minor codestyle changes Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com> --- runner/job_list.c | 34 +++++++- runner/job_list.h | 1 + runner/runner.c | 5 ++ runner/runner_tests.c | 18 ++++- runner/settings.c | 121 +++++++++++++++++++++++----- runner/settings.h | 1 + runner/testdata/meson.build | 5 ++ runner/testdata/test-blacklist.txt | 2 + runner/testdata/test-blacklist2.txt | 2 + 9 files changed, 165 insertions(+), 24 deletions(-) create mode 100644 runner/testdata/test-blacklist.txt create mode 100644 runner/testdata/test-blacklist2.txt diff --git a/runner/job_list.c b/runner/job_list.c index 4a16742f..5283fd72 100644 --- a/runner/job_list.c +++ b/runner/job_list.c @@ -111,11 +111,17 @@ static void add_subtests(struct job_list *job_list, struct settings *settings, fprintf(stderr, "popen error when executing %s: %s\n", binary, strerror(errno)); } else if (WIFEXITED(s)) { if (WEXITSTATUS(s) == IGT_EXIT_INVALID) { + char piglitname[256]; + + generate_piglit_name(binary, NULL, + piglitname, sizeof(piglitname)); /* No subtests on this one */ - if (exclude && exclude->size && matches_any(binary, exclude)) { + if (exclude && exclude->size && + matches_any(piglitname, exclude)) { return; } - if (!include || !include->size || matches_any(binary, include)) { + if (!include || !include->size || + matches_any(piglitname, include)) { add_job_list_entry(job_list, strdup(binary), NULL, 0); return; } @@ -291,6 +297,30 @@ static bool job_list_from_test_list(struct job_list *job_list, return any; } +void list_all_tests(struct job_list *lst) +{ + char piglit_name[256]; + + for (size_t test_idx = 0; test_idx < lst->size; ++test_idx) { + struct job_list_entry *current_entry = lst->entries + test_idx; + char *binary = current_entry->binary; + + if (current_entry->subtest_count == 0) { + generate_piglit_name(binary, NULL, + piglit_name, sizeof(piglit_name)); + printf("%s\n", piglit_name); + continue; + } + for (size_t subtest_idx = 0; + subtest_idx < current_entry->subtest_count; + ++subtest_idx) { + generate_piglit_name(binary, current_entry->subtests[subtest_idx], + piglit_name, sizeof(piglit_name)); + printf("%s\n", piglit_name); + } + } +} + static char *lowercase(const char *str) { char *ret = malloc(strlen(str) + 1); diff --git a/runner/job_list.h b/runner/job_list.h index f8bbbddc..39c9b863 100644 --- a/runner/job_list.h +++ b/runner/job_list.h @@ -36,5 +36,6 @@ bool create_job_list(struct job_list *job_list, struct settings *settings); bool serialize_job_list(struct job_list *job_list, struct settings *settings); bool read_job_list(struct job_list *job_list, int dirfd); +void list_all_tests(struct job_list *lst); #endif diff --git a/runner/runner.c b/runner/runner.c index e1a6ccba..4855ad64 100644 --- a/runner/runner.c +++ b/runner/runner.c @@ -24,6 +24,11 @@ int main(int argc, char **argv) return 1; } + if (settings.list_all) { + list_all_tests(&job_list); + return 0; + } + if (!initialize_execute_state(&state, &settings, &job_list)) { return 1; } diff --git a/runner/runner_tests.c b/runner/runner_tests.c index c09cda70..39d4a078 100644 --- a/runner/runner_tests.c +++ b/runner/runner_tests.c @@ -378,6 +378,7 @@ igt_main } igt_subtest("parse-all-settings") { + char blacklist_name[PATH_MAX], blacklist2_name[PATH_MAX]; const char *argv[] = { "runner", "-n", "foo", "--abort-on-monitored-error=taint,lockdep", @@ -388,6 +389,8 @@ igt_main "-t", "pattern2", "-x", "xpattern1", "-x", "xpattern2", + "-b", blacklist_name, + "--blacklist", blacklist2_name, "-s", "-l", "verbose", "--overwrite", @@ -401,6 +404,9 @@ igt_main "path-to-results", }; + sprintf(blacklist_name, "%s/test-blacklist.txt", testdatadir); + sprintf(blacklist2_name, "%s/test-blacklist2.txt", testdatadir); + igt_assert(parse_options(ARRAY_SIZE(argv), (char**)argv, settings)); igt_assert_eq(settings->abort_mask, ABORT_TAINT | ABORT_LOCKDEP); @@ -410,9 +416,11 @@ igt_main igt_assert_eq(settings->include_regexes.size, 2); igt_assert_eqstr(settings->include_regexes.regex_strings[0], "pattern1"); igt_assert_eqstr(settings->include_regexes.regex_strings[1], "pattern2"); - igt_assert_eq(settings->exclude_regexes.size, 2); + igt_assert_eq(settings->exclude_regexes.size, 4); igt_assert_eqstr(settings->exclude_regexes.regex_strings[0], "xpattern1"); igt_assert_eqstr(settings->exclude_regexes.regex_strings[1], "xpattern2"); + igt_assert_eqstr(settings->exclude_regexes.regex_strings[2], "xpattern3"); /* From blacklist */ + igt_assert_eqstr(settings->exclude_regexes.regex_strings[3], "xpattern4"); /* From blacklist2 */ igt_assert(settings->sync); igt_assert_eq(settings->log_level, LOG_LEVEL_VERBOSE); igt_assert(settings->overwrite); @@ -426,6 +434,14 @@ igt_main igt_assert(settings->piglit_style_dmesg); igt_assert_eq(settings->dmesg_warn_level, 3); } + igt_subtest("parse-list-all") { + const char *argv[] = { "runner", + "--list-all", + "test-root-dir"}; + + igt_assert(parse_options(ARRAY_SIZE(argv), (char**)argv, settings)); + igt_assert_eq(settings->list_all, 1); + } igt_subtest("dmesg-warn-level-inferred") { const char *argv[] = { "runner", diff --git a/runner/settings.c b/runner/settings.c index ad38ae8d..9920e1a6 100644 --- a/runner/settings.c +++ b/runner/settings.c @@ -1,5 +1,6 @@ #include "settings.h" +#include <ctype.h> #include <errno.h> #include <fcntl.h> #include <getopt.h> @@ -30,6 +31,8 @@ enum { OPT_MULTIPLE = 'm', OPT_TIMEOUT = 'c', OPT_WATCHDOG = 'g', + OPT_BLACKLIST = 'b', + OPT_LIST_ALL = 'L', }; static struct { @@ -117,7 +120,8 @@ static bool parse_abort_conditions(struct settings *settings, const char *optarg } static const char *usage_str = - "usage: runner [options] [test_root] results-path\n\n" + "usage: runner [options] [test_root] results-path\n" + " or: runner --list-all [options] [test_root]\n\n" "Options:\n" " Piglit compatible:\n" " -h, --help Show this help message and exit\n" @@ -172,6 +176,10 @@ static const char *usage_str = " (longer) filter list means the test result should\n" " change. KERN_NOTICE dmesg level is treated as warn,\n" " unless overridden with --dmesg-warn-level.\n" + " -b, --blacklist FILENAME\n" + " Exclude all test matching to regexes from FILENAME\n" + " (can be used more than once)\n" + " -L, --list-all List all matching subtests instead of running\n" " [test_root] Directory that contains the IGT tests. The environment\n" " variable IGT_TEST_ROOT will be used if set, overriding\n" " this option if given.\n" @@ -213,6 +221,51 @@ static bool add_regex(struct regex_list *list, char *new) return true; } +static bool parse_blacklist(struct regex_list *exclude_regexes, + char *blacklist_filename) +{ + FILE *f; + char *line = NULL; + size_t line_len = 0; + bool status; + + if ((f = fopen(blacklist_filename, "r")) == NULL) { + fprintf(stderr, "Cannot open blacklist file %s\n", blacklist_filename); + return false; + } + while (1) { + size_t str_size = 0, idx = 0; + + if (getline(&line, &line_len, f) == -1) { + if (errno == EINTR) + continue; + else + break; + } + + while (true) { + if (line[idx] == '\n' || + line[idx] == '\0' || + line[idx] == '#') /* # starts a comment */ + break; + if (!isspace(line[idx])) + str_size = idx + 1; + idx++; + } + if (str_size > 0) { + char *test_regex = strndup(line, str_size); + + status = add_regex(exclude_regexes, test_regex); + if (!status) + break; + } + } + + free(line); + fclose(f); + return status; +} + static void free_regexes(struct regex_list *regexes) { size_t i; @@ -272,6 +325,8 @@ bool parse_options(int argc, char **argv, {"use-watchdog", no_argument, NULL, OPT_WATCHDOG}, {"piglit-style-dmesg", no_argument, NULL, OPT_PIGLIT_DMESG}, {"dmesg-warn-level", required_argument, NULL, OPT_DMESG_WARN_LEVEL}, + {"blacklist", required_argument, NULL, OPT_BLACKLIST}, + {"list-all", no_argument, NULL, OPT_LIST_ALL}, { 0, 0, 0, 0}, }; @@ -281,7 +336,8 @@ bool parse_options(int argc, char **argv, settings->dmesg_warn_level = -1; - while ((c = getopt_long(argc, argv, "hn:dt:x:sl:om", long_options, NULL)) != -1) { + while ((c = getopt_long(argc, argv, "hn:dt:x:sl:omb:L", + long_options, NULL)) != -1) { switch (c) { case OPT_HELP: usage(NULL, stdout); @@ -342,6 +398,14 @@ bool parse_options(int argc, char **argv, case OPT_DMESG_WARN_LEVEL: settings->dmesg_warn_level = atoi(optarg); break; + case OPT_BLACKLIST: + if (!parse_blacklist(&settings->exclude_regexes, + absolute_path(optarg))) + goto error; + break; + case OPT_LIST_ALL: + settings->list_all = true; + break; case '?': usage(NULL, stderr); goto error; @@ -354,20 +418,40 @@ bool parse_options(int argc, char **argv, if (settings->dmesg_warn_level < 0) settings->dmesg_warn_level = 4; /* KERN_WARN */ - switch (argc - optind) { - case 2: - settings->test_root = absolute_path(argv[optind]); - ++optind; - /* fallthrough */ - case 1: - settings->results_path = absolute_path(argv[optind]); - break; - case 0: - usage("Results-path missing", stderr); - goto error; - default: - usage("Extra arguments after results-path", stderr); - goto error; + if (settings->list_all) { /* --list-all doesn't require results path */ + switch (argc - optind) { + case 1: + settings->test_root = absolute_path(argv[optind]); + ++optind; + /* fallthrough */ + case 0: + break; + default: + usage("Too many arguments for --list-all", stderr); + goto error; + } + } else { + switch (argc - optind) { + case 2: + settings->test_root = absolute_path(argv[optind]); + ++optind; + /* fallthrough */ + case 1: + settings->results_path = absolute_path(argv[optind]); + break; + case 0: + usage("Results-path missing", stderr); + goto error; + default: + usage("Extra arguments after results-path", stderr); + goto error; + } + if (!settings->name) { + char *name = strdup(settings->results_path); + + settings->name = strdup(basename(name)); + free(name); + } } if ((env_test_root = getenv("IGT_TEST_ROOT")) != NULL) { @@ -380,11 +464,6 @@ bool parse_options(int argc, char **argv, goto error; } - if (!settings->name) { - char *name = strdup(settings->results_path); - settings->name = strdup(basename(name)); - free(name); - } return true; diff --git a/runner/settings.h b/runner/settings.h index 0a1ee08d..6dcfa8c5 100644 --- a/runner/settings.h +++ b/runner/settings.h @@ -43,6 +43,7 @@ struct settings { char *results_path; bool piglit_style_dmesg; int dmesg_warn_level; + bool list_all; }; /** diff --git a/runner/testdata/meson.build b/runner/testdata/meson.build index 011eff8e..2456f82a 100644 --- a/runner/testdata/meson.build +++ b/runner/testdata/meson.build @@ -12,6 +12,11 @@ foreach prog : testdata_progs install : false) endforeach +configure_file(input : 'test-blacklist.txt', + output : 'test-blacklist.txt', copy : true) +configure_file(input : 'test-blacklist2.txt', + output : 'test-blacklist2.txt', copy : true) + testdata_list = custom_target('testdata_testlist', output : 'test-list.txt', command : [ gen_testlist, '@OUTPUT@', testdata_progs ], diff --git a/runner/testdata/test-blacklist.txt b/runner/testdata/test-blacklist.txt new file mode 100644 index 00000000..6b09ae5c --- /dev/null +++ b/runner/testdata/test-blacklist.txt @@ -0,0 +1,2 @@ +xpattern3 # Comment 1 +# Comment 2 diff --git a/runner/testdata/test-blacklist2.txt b/runner/testdata/test-blacklist2.txt new file mode 100644 index 00000000..d0f6e612 --- /dev/null +++ b/runner/testdata/test-blacklist2.txt @@ -0,0 +1,2 @@ + +xpattern4 -- 2.21.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH v4] runner: add --list-all and --blacklist 2019-06-18 9:07 ` [igt-dev] [PATCH v4] " Oleg Vasilev @ 2019-06-18 9:26 ` Petri Latvala 0 siblings, 0 replies; 17+ messages in thread From: Petri Latvala @ 2019-06-18 9:26 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev On Tue, Jun 18, 2019 at 12:07:25PM +0300, Oleg Vasilev wrote: > Currently, runner already collects all subtest names into job_list. > --list-all allows to output it to stdout. > > --blacklist option takes a filename as an argument and adds all regexes > from that file to the exclusion list. > > v2: > - Update exclude/include regex matches for tests without > subtests to be matched with pigtit-like name (Petri) > - Replace relative paths with those formatted with testdatadir (Petri) > - Minor codestyle changes > > v3: > - Print test names in lowercase (Petri) > > v4: > - Replaced custom str_to_lower with generate_piglit_name (Petri) > - Minor codestyle changes > > Cc: Petri Latvala <petri.latvala@intel.com> > Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com> Pushing as soon as CI is done churning through this, thanks for the patch. _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for runner: add --list-all and --blacklist (rev2) 2019-06-14 13:24 [igt-dev] [PATCH] runner: add --list-all and --blacklist Oleg Vasilev ` (2 preceding siblings ...) 2019-06-17 11:49 ` [igt-dev] [PATCH v2] " Oleg Vasilev @ 2019-06-17 14:14 ` Patchwork 2019-06-17 15:31 ` [igt-dev] ✓ Fi.CI.BAT: success for runner: add --list-all and --blacklist (rev3) Patchwork ` (5 subsequent siblings) 9 siblings, 0 replies; 17+ messages in thread From: Patchwork @ 2019-06-17 14:14 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev == Series Details == Series: runner: add --list-all and --blacklist (rev2) URL : https://patchwork.freedesktop.org/series/62106/ State : success == Summary == CI Bug Log - changes from IGT_5059 -> IGTPW_3161 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://patchwork.freedesktop.org/api/1.0/series/62106/revisions/2/mbox/ Known issues ------------ Here are the changes found in IGTPW_3161 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_exec_suspend@basic-s4-devices: - fi-blb-e6850: [PASS][1] -> [INCOMPLETE][2] ([fdo#107718]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html * igt@gem_mmap_gtt@basic-write-no-prefault: - fi-icl-u3: [PASS][3] -> [DMESG-WARN][4] ([fdo#107724]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/fi-icl-u3/igt@gem_mmap_gtt@basic-write-no-prefault.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/fi-icl-u3/igt@gem_mmap_gtt@basic-write-no-prefault.html * igt@i915_selftest@live_gtt: - fi-glk-dsi: [PASS][5] -> [INCOMPLETE][6] ([fdo#103359] / [k.org#198133]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/fi-glk-dsi/igt@i915_selftest@live_gtt.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/fi-glk-dsi/igt@i915_selftest@live_gtt.html * igt@kms_frontbuffer_tracking@basic: - fi-icl-u2: [PASS][7] -> [FAIL][8] ([fdo#103167]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167 [fdo#103359]: https://bugs.freedesktop.org/show_bug.cgi?id=103359 [fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718 [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724 [k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133 Participating hosts (44 -> 35) ------------------------------ Additional (1): fi-icl-dsi Missing (10): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-bwr-2160 fi-skl-6260u fi-kbl-7500u fi-byt-clapper fi-bdw-samus Build changes ------------- * IGT: IGT_5059 -> IGTPW_3161 CI_DRM_6284: f992a9cb038edbdd5ff20a1ed3410e8b95879bcf @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_3161: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/ IGT_5059: 1f67ee0d09d6513f487f2be74aae9700e755258a @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/ _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for runner: add --list-all and --blacklist (rev3) 2019-06-14 13:24 [igt-dev] [PATCH] runner: add --list-all and --blacklist Oleg Vasilev ` (3 preceding siblings ...) 2019-06-17 14:14 ` [igt-dev] ✓ Fi.CI.BAT: success for runner: add --list-all and --blacklist (rev2) Patchwork @ 2019-06-17 15:31 ` Patchwork 2019-06-17 23:23 ` [igt-dev] ✓ Fi.CI.IGT: success for runner: add --list-all and --blacklist (rev2) Patchwork ` (4 subsequent siblings) 9 siblings, 0 replies; 17+ messages in thread From: Patchwork @ 2019-06-17 15:31 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev == Series Details == Series: runner: add --list-all and --blacklist (rev3) URL : https://patchwork.freedesktop.org/series/62106/ State : success == Summary == CI Bug Log - changes from CI_DRM_6286 -> IGTPW_3163 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://patchwork.freedesktop.org/api/1.0/series/62106/revisions/3/mbox/ Known issues ------------ Here are the changes found in IGTPW_3163 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_exec_suspend@basic-s3: - fi-blb-e6850: [PASS][1] -> [INCOMPLETE][2] ([fdo#107718]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6286/fi-blb-e6850/igt@gem_exec_suspend@basic-s3.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/fi-blb-e6850/igt@gem_exec_suspend@basic-s3.html * igt@i915_selftest@live_hangcheck: - fi-icl-y: [PASS][3] -> [INCOMPLETE][4] ([fdo#107713] / [fdo#108569]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6286/fi-icl-y/igt@i915_selftest@live_hangcheck.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/fi-icl-y/igt@i915_selftest@live_hangcheck.html #### Possible fixes #### * igt@gem_ctx_switch@basic-default: - fi-icl-guc: [INCOMPLETE][5] ([fdo#107713] / [fdo#108569]) -> [PASS][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6286/fi-icl-guc/igt@gem_ctx_switch@basic-default.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/fi-icl-guc/igt@gem_ctx_switch@basic-default.html * igt@kms_chamelium@hdmi-hpd-fast: - fi-kbl-7500u: [FAIL][7] ([fdo#109485]) -> [PASS][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6286/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html * igt@kms_frontbuffer_tracking@basic: - fi-hsw-peppy: [DMESG-WARN][9] ([fdo#102614]) -> [PASS][10] [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6286/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html * igt@kms_pipe_crc_basic@read-crc-pipe-b: - fi-ilk-650: [DMESG-WARN][11] ([fdo#106387]) -> [PASS][12] [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6286/fi-ilk-650/igt@kms_pipe_crc_basic@read-crc-pipe-b.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/fi-ilk-650/igt@kms_pipe_crc_basic@read-crc-pipe-b.html [fdo#102614]: https://bugs.freedesktop.org/show_bug.cgi?id=102614 [fdo#106387]: https://bugs.freedesktop.org/show_bug.cgi?id=106387 [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713 [fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718 [fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569 [fdo#109485]: https://bugs.freedesktop.org/show_bug.cgi?id=109485 Participating hosts (46 -> 39) ------------------------------ Additional (1): fi-pnv-d510 Missing (8): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-kbl-x1275 fi-byt-clapper fi-bdw-samus Build changes ------------- * IGT: IGT_5059 -> IGTPW_3163 CI_DRM_6286: 4853198e8f13330c123082ef1f0759d476ca62d8 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_3163: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/ IGT_5059: 1f67ee0d09d6513f487f2be74aae9700e755258a @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/ _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for runner: add --list-all and --blacklist (rev2) 2019-06-14 13:24 [igt-dev] [PATCH] runner: add --list-all and --blacklist Oleg Vasilev ` (4 preceding siblings ...) 2019-06-17 15:31 ` [igt-dev] ✓ Fi.CI.BAT: success for runner: add --list-all and --blacklist (rev3) Patchwork @ 2019-06-17 23:23 ` Patchwork 2019-06-18 2:11 ` [igt-dev] ✓ Fi.CI.IGT: success for runner: add --list-all and --blacklist (rev3) Patchwork ` (3 subsequent siblings) 9 siblings, 0 replies; 17+ messages in thread From: Patchwork @ 2019-06-17 23:23 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev == Series Details == Series: runner: add --list-all and --blacklist (rev2) URL : https://patchwork.freedesktop.org/series/62106/ State : success == Summary == CI Bug Log - changes from IGT_5059_full -> IGTPW_3161_full ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://patchwork.freedesktop.org/api/1.0/series/62106/revisions/2/mbox/ Known issues ------------ Here are the changes found in IGTPW_3161_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_ctx_isolation@bcs0-s3: - shard-kbl: [PASS][1] -> [DMESG-WARN][2] ([fdo#108566]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl3/igt@gem_ctx_isolation@bcs0-s3.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-kbl6/igt@gem_ctx_isolation@bcs0-s3.html * igt@gem_eio@in-flight-immediate: - shard-apl: [PASS][3] -> [DMESG-WARN][4] ([fdo#110913 ]) +2 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-apl8/igt@gem_eio@in-flight-immediate.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-apl8/igt@gem_eio@in-flight-immediate.html * igt@gem_eio@suspend: - shard-kbl: [PASS][5] -> [DMESG-WARN][6] ([fdo#110913 ]) +2 similar issues [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl1/igt@gem_eio@suspend.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-kbl2/igt@gem_eio@suspend.html * igt@gem_persistent_relocs@forked-interruptible-thrash-inactive: - shard-apl: [PASS][7] -> [INCOMPLETE][8] ([fdo#103927]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-apl5/igt@gem_persistent_relocs@forked-interruptible-thrash-inactive.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-apl1/igt@gem_persistent_relocs@forked-interruptible-thrash-inactive.html * igt@gem_userptr_blits@sync-unmap-cycles: - shard-snb: [PASS][9] -> [DMESG-WARN][10] ([fdo#110913 ]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-snb5/igt@gem_userptr_blits@sync-unmap-cycles.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-snb2/igt@gem_userptr_blits@sync-unmap-cycles.html * igt@i915_pm_rc6_residency@rc6-accuracy: - shard-kbl: [PASS][11] -> [SKIP][12] ([fdo#109271]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl1/igt@i915_pm_rc6_residency@rc6-accuracy.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-kbl2/igt@i915_pm_rc6_residency@rc6-accuracy.html * igt@kms_cursor_crc@pipe-b-cursor-suspend: - shard-apl: [PASS][13] -> [FAIL][14] ([fdo#103232]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-apl2/igt@kms_cursor_crc@pipe-b-cursor-suspend.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-apl8/igt@kms_cursor_crc@pipe-b-cursor-suspend.html * igt@kms_flip@2x-plain-flip-interruptible: - shard-hsw: [PASS][15] -> [SKIP][16] ([fdo#109271]) +17 similar issues [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-hsw7/igt@kms_flip@2x-plain-flip-interruptible.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-hsw1/igt@kms_flip@2x-plain-flip-interruptible.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-move: - shard-iclb: [PASS][17] -> [FAIL][18] ([fdo#103167]) +6 similar issues [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-move.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-iclb7/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-move.html * igt@kms_frontbuffer_tracking@fbc-1p-rte: - shard-iclb: [PASS][19] -> [FAIL][20] ([fdo#103167] / [fdo#110378]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb1/igt@kms_frontbuffer_tracking@fbc-1p-rte.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-1p-rte.html * igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-pwrite: - shard-iclb: [PASS][21] -> [INCOMPLETE][22] ([fdo#106978] / [fdo#107713]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb3/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-pwrite.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-pwrite.html * igt@kms_plane_lowres@pipe-a-tiling-x: - shard-iclb: [PASS][23] -> [FAIL][24] ([fdo#103166]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb4/igt@kms_plane_lowres@pipe-a-tiling-x.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-iclb5/igt@kms_plane_lowres@pipe-a-tiling-x.html * igt@kms_psr@psr2_primary_blt: - shard-iclb: [PASS][25] -> [SKIP][26] ([fdo#109441]) +1 similar issue [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb2/igt@kms_psr@psr2_primary_blt.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-iclb6/igt@kms_psr@psr2_primary_blt.html * igt@kms_vblank@pipe-a-ts-continuation-suspend: - shard-apl: [PASS][27] -> [DMESG-WARN][28] ([fdo#108566]) +3 similar issues [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-apl1/igt@kms_vblank@pipe-a-ts-continuation-suspend.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-apl1/igt@kms_vblank@pipe-a-ts-continuation-suspend.html #### Possible fixes #### * igt@gem_mmap_gtt@hang: - shard-kbl: [DMESG-WARN][29] ([fdo#110913 ]) -> [PASS][30] +4 similar issues [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl2/igt@gem_mmap_gtt@hang.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-kbl1/igt@gem_mmap_gtt@hang.html * igt@gem_persistent_relocs@forked-interruptible-thrashing: - shard-snb: [DMESG-WARN][31] ([fdo#110789] / [fdo#110913 ]) -> [PASS][32] [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-snb7/igt@gem_persistent_relocs@forked-interruptible-thrashing.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-snb4/igt@gem_persistent_relocs@forked-interruptible-thrashing.html * igt@gem_persistent_relocs@forked-thrashing: - shard-apl: [DMESG-WARN][33] ([fdo#110913 ]) -> [PASS][34] +4 similar issues [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-apl4/igt@gem_persistent_relocs@forked-thrashing.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-apl1/igt@gem_persistent_relocs@forked-thrashing.html * igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup: - shard-snb: [DMESG-WARN][35] ([fdo#110913 ]) -> [PASS][36] [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-snb5/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-snb1/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup.html * igt@i915_pm_rc6_residency@rc6-accuracy: - shard-snb: [SKIP][37] ([fdo#109271]) -> [PASS][38] [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-snb1/igt@i915_pm_rc6_residency@rc6-accuracy.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-snb4/igt@i915_pm_rc6_residency@rc6-accuracy.html * igt@i915_pm_rpm@system-suspend-execbuf: - shard-iclb: [INCOMPLETE][39] ([fdo#107713] / [fdo#108840]) -> [PASS][40] [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb2/igt@i915_pm_rpm@system-suspend-execbuf.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-iclb3/igt@i915_pm_rpm@system-suspend-execbuf.html * igt@i915_selftest@live_evict: - shard-kbl: [INCOMPLETE][41] ([fdo#103665]) -> [PASS][42] [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl3/igt@i915_selftest@live_evict.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-kbl2/igt@i915_selftest@live_evict.html * igt@i915_suspend@fence-restore-tiled2untiled: - shard-apl: [DMESG-WARN][43] ([fdo#108566]) -> [PASS][44] +3 similar issues [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-apl3/igt@i915_suspend@fence-restore-tiled2untiled.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-apl8/igt@i915_suspend@fence-restore-tiled2untiled.html * igt@i915_suspend@sysfs-reader: - shard-kbl: [DMESG-WARN][45] ([fdo#108566]) -> [PASS][46] [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl4/igt@i915_suspend@sysfs-reader.html [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-kbl3/igt@i915_suspend@sysfs-reader.html * igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding: - shard-kbl: [FAIL][47] ([fdo#103232]) -> [PASS][48] [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl3/igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding.html [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-kbl4/igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding.html * igt@kms_dp_dsc@basic-dsc-enable-edp: - shard-iclb: [SKIP][49] ([fdo#109349]) -> [PASS][50] [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb5/igt@kms_dp_dsc@basic-dsc-enable-edp.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-move: - shard-hsw: [SKIP][51] ([fdo#109271]) -> [PASS][52] +20 similar issues [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-hsw1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-move.html [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-hsw8/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-move.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-plflip-blt: - shard-iclb: [FAIL][53] ([fdo#103167]) -> [PASS][54] +7 similar issues [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb6/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-plflip-blt.html [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-iclb5/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-plflip-blt.html * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes: - shard-glk: [INCOMPLETE][55] ([fdo#103359] / [k.org#198133]) -> [PASS][56] [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-glk3/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-glk2/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html * igt@kms_plane_lowres@pipe-a-tiling-y: - shard-iclb: [FAIL][57] ([fdo#103166]) -> [PASS][58] [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb1/igt@kms_plane_lowres@pipe-a-tiling-y.html [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-iclb7/igt@kms_plane_lowres@pipe-a-tiling-y.html * igt@kms_psr@psr2_sprite_plane_move: - shard-iclb: [SKIP][59] ([fdo#109441]) -> [PASS][60] +1 similar issue [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb4/igt@kms_psr@psr2_sprite_plane_move.html [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html * igt@perf_pmu@rc6: - shard-kbl: [SKIP][61] ([fdo#109271]) -> [PASS][62] [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl2/igt@perf_pmu@rc6.html [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-kbl1/igt@perf_pmu@rc6.html #### Warnings #### * igt@gem_tiled_swapping@non-threaded: - shard-hsw: [INCOMPLETE][63] ([fdo#103540]) -> [FAIL][64] ([fdo#108686]) [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-hsw5/igt@gem_tiled_swapping@non-threaded.html [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-hsw7/igt@gem_tiled_swapping@non-threaded.html * igt@kms_cursor_crc@pipe-b-cursor-suspend: - shard-kbl: [INCOMPLETE][65] ([fdo#103665]) -> [FAIL][66] ([fdo#103232]) [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl2/igt@kms_cursor_crc@pipe-b-cursor-suspend.html [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/shard-kbl1/igt@kms_cursor_crc@pipe-b-cursor-suspend.html [fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166 [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167 [fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232 [fdo#103359]: https://bugs.freedesktop.org/show_bug.cgi?id=103359 [fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540 [fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665 [fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927 [fdo#106978]: https://bugs.freedesktop.org/show_bug.cgi?id=106978 [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713 [fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566 [fdo#108686]: https://bugs.freedesktop.org/show_bug.cgi?id=108686 [fdo#108840]: https://bugs.freedesktop.org/show_bug.cgi?id=108840 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#110378]: https://bugs.freedesktop.org/show_bug.cgi?id=110378 [fdo#110789]: https://bugs.freedesktop.org/show_bug.cgi?id=110789 [fdo#110913 ]: https://bugs.freedesktop.org/show_bug.cgi?id=110913 [k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133 Participating hosts (7 -> 6) ------------------------------ Missing (1): shard-skl Build changes ------------- * IGT: IGT_5059 -> IGTPW_3161 CI_DRM_6284: f992a9cb038edbdd5ff20a1ed3410e8b95879bcf @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_3161: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/ IGT_5059: 1f67ee0d09d6513f487f2be74aae9700e755258a @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3161/ _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for runner: add --list-all and --blacklist (rev3) 2019-06-14 13:24 [igt-dev] [PATCH] runner: add --list-all and --blacklist Oleg Vasilev ` (5 preceding siblings ...) 2019-06-17 23:23 ` [igt-dev] ✓ Fi.CI.IGT: success for runner: add --list-all and --blacklist (rev2) Patchwork @ 2019-06-18 2:11 ` Patchwork 2019-06-18 9:36 ` [igt-dev] ✗ Fi.CI.BAT: failure for runner: add --list-all and --blacklist (rev4) Patchwork ` (2 subsequent siblings) 9 siblings, 0 replies; 17+ messages in thread From: Patchwork @ 2019-06-18 2:11 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev == Series Details == Series: runner: add --list-all and --blacklist (rev3) URL : https://patchwork.freedesktop.org/series/62106/ State : success == Summary == CI Bug Log - changes from IGT_5059_full -> IGTPW_3163_full ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://patchwork.freedesktop.org/api/1.0/series/62106/revisions/3/mbox/ Known issues ------------ Here are the changes found in IGTPW_3163_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_eio@in-flight-1us: - shard-snb: [PASS][1] -> [DMESG-WARN][2] ([fdo#110913 ]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-snb6/igt@gem_eio@in-flight-1us.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-snb1/igt@gem_eio@in-flight-1us.html * igt@gem_eio@in-flight-suspend: - shard-kbl: [PASS][3] -> [DMESG-WARN][4] ([fdo#110913 ]) +4 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl7/igt@gem_eio@in-flight-suspend.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-kbl7/igt@gem_eio@in-flight-suspend.html * igt@gem_persistent_relocs@forked-interruptible-faulting-reloc-thrashing: - shard-snb: [PASS][5] -> [DMESG-WARN][6] ([fdo#110789] / [fdo#110913 ]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-snb5/igt@gem_persistent_relocs@forked-interruptible-faulting-reloc-thrashing.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-snb2/igt@gem_persistent_relocs@forked-interruptible-faulting-reloc-thrashing.html * igt@gem_userptr_blits@map-fixed-invalidate-busy-gup: - shard-apl: [PASS][7] -> [DMESG-WARN][8] ([fdo#110913 ]) +3 similar issues [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-apl4/igt@gem_userptr_blits@map-fixed-invalidate-busy-gup.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-apl6/igt@gem_userptr_blits@map-fixed-invalidate-busy-gup.html * igt@gem_workarounds@suspend-resume-context: - shard-apl: [PASS][9] -> [DMESG-WARN][10] ([fdo#108566]) +3 similar issues [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-apl3/igt@gem_workarounds@suspend-resume-context.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-apl2/igt@gem_workarounds@suspend-resume-context.html * igt@kms_cursor_legacy@cursor-vs-flip-toggle: - shard-glk: [PASS][11] -> [INCOMPLETE][12] ([fdo#103359] / [k.org#198133]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-glk6/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-glk2/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html * igt@kms_flip@2x-flip-vs-absolute-wf_vblank: - shard-hsw: [PASS][13] -> [SKIP][14] ([fdo#109271]) +18 similar issues [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-hsw8/igt@kms_flip@2x-flip-vs-absolute-wf_vblank.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-hsw1/igt@kms_flip@2x-flip-vs-absolute-wf_vblank.html * igt@kms_flip@modeset-vs-vblank-race-interruptible: - shard-glk: [PASS][15] -> [FAIL][16] ([fdo#103060]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-glk4/igt@kms_flip@modeset-vs-vblank-race-interruptible.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-glk1/igt@kms_flip@modeset-vs-vblank-race-interruptible.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw: - shard-iclb: [PASS][17] -> [FAIL][18] ([fdo#103167]) +5 similar issues [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb5/igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-iclb3/igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw.html * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a: - shard-kbl: [PASS][19] -> [DMESG-WARN][20] ([fdo#108566]) +1 similar issue [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl3/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-kbl6/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html * igt@kms_plane_lowres@pipe-a-tiling-x: - shard-iclb: [PASS][21] -> [FAIL][22] ([fdo#103166]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb4/igt@kms_plane_lowres@pipe-a-tiling-x.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-iclb1/igt@kms_plane_lowres@pipe-a-tiling-x.html * igt@kms_psr@psr2_primary_blt: - shard-iclb: [PASS][23] -> [SKIP][24] ([fdo#109441]) +1 similar issue [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb2/igt@kms_psr@psr2_primary_blt.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-iclb8/igt@kms_psr@psr2_primary_blt.html * igt@kms_vblank@pipe-a-wait-forked-hang: - shard-hsw: [PASS][25] -> [INCOMPLETE][26] ([fdo#103540]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-hsw8/igt@kms_vblank@pipe-a-wait-forked-hang.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-hsw7/igt@kms_vblank@pipe-a-wait-forked-hang.html #### Possible fixes #### * igt@gem_mmap_gtt@hang: - shard-kbl: [DMESG-WARN][27] ([fdo#110913 ]) -> [PASS][28] +4 similar issues [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl2/igt@gem_mmap_gtt@hang.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-kbl7/igt@gem_mmap_gtt@hang.html * igt@gem_persistent_relocs@forked-faulting-reloc-thrashing: - shard-snb: [DMESG-WARN][29] ([fdo#110789] / [fdo#110913 ]) -> [PASS][30] [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-snb4/igt@gem_persistent_relocs@forked-faulting-reloc-thrashing.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-snb4/igt@gem_persistent_relocs@forked-faulting-reloc-thrashing.html * igt@gem_persistent_relocs@forked-thrashing: - shard-apl: [DMESG-WARN][31] ([fdo#110913 ]) -> [PASS][32] +3 similar issues [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-apl4/igt@gem_persistent_relocs@forked-thrashing.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-apl3/igt@gem_persistent_relocs@forked-thrashing.html * igt@gem_tiled_swapping@non-threaded: - shard-hsw: [INCOMPLETE][33] ([fdo#103540]) -> [PASS][34] [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-hsw5/igt@gem_tiled_swapping@non-threaded.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-hsw1/igt@gem_tiled_swapping@non-threaded.html * igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup: - shard-snb: [DMESG-WARN][35] ([fdo#110913 ]) -> [PASS][36] [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-snb5/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-snb1/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup.html * igt@i915_pm_rpm@system-suspend-execbuf: - shard-iclb: [INCOMPLETE][37] ([fdo#107713] / [fdo#108840]) -> [PASS][38] [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb2/igt@i915_pm_rpm@system-suspend-execbuf.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-iclb4/igt@i915_pm_rpm@system-suspend-execbuf.html * igt@i915_selftest@live_evict: - shard-kbl: [INCOMPLETE][39] ([fdo#103665]) -> [PASS][40] +1 similar issue [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl3/igt@i915_selftest@live_evict.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-kbl2/igt@i915_selftest@live_evict.html * igt@i915_suspend@fence-restore-tiled2untiled: - shard-apl: [DMESG-WARN][41] ([fdo#108566]) -> [PASS][42] +4 similar issues [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-apl3/igt@i915_suspend@fence-restore-tiled2untiled.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-apl3/igt@i915_suspend@fence-restore-tiled2untiled.html * igt@i915_suspend@sysfs-reader: - shard-kbl: [DMESG-WARN][43] ([fdo#108566]) -> [PASS][44] [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl4/igt@i915_suspend@sysfs-reader.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-kbl7/igt@i915_suspend@sysfs-reader.html * igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding: - shard-kbl: [FAIL][45] ([fdo#103232]) -> [PASS][46] [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl3/igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding.html [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-kbl1/igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding.html * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-wc: - shard-hsw: [SKIP][47] ([fdo#109271]) -> [PASS][48] +16 similar issues [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-hsw1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-wc.html [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-hsw7/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-plflip-blt: - shard-iclb: [FAIL][49] ([fdo#103167]) -> [PASS][50] +9 similar issues [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb6/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-plflip-blt.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-iclb8/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-plflip-blt.html * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes: - shard-glk: [INCOMPLETE][51] ([fdo#103359] / [k.org#198133]) -> [PASS][52] [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-glk3/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-glk9/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html * igt@kms_psr@psr2_sprite_plane_move: - shard-iclb: [SKIP][53] ([fdo#109441]) -> [PASS][54] +2 similar issues [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-iclb4/igt@kms_psr@psr2_sprite_plane_move.html [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html * igt@kms_setmode@basic: - shard-apl: [FAIL][55] ([fdo#99912]) -> [PASS][56] [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-apl3/igt@kms_setmode@basic.html [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-apl8/igt@kms_setmode@basic.html - shard-kbl: [FAIL][57] ([fdo#99912]) -> [PASS][58] [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl6/igt@kms_setmode@basic.html [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-kbl6/igt@kms_setmode@basic.html * igt@perf_pmu@rc6: - shard-kbl: [SKIP][59] ([fdo#109271]) -> [PASS][60] [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5059/shard-kbl2/igt@perf_pmu@rc6.html [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/shard-kbl1/igt@perf_pmu@rc6.html [fdo#103060]: https://bugs.freedesktop.org/show_bug.cgi?id=103060 [fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166 [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167 [fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232 [fdo#103359]: https://bugs.freedesktop.org/show_bug.cgi?id=103359 [fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540 [fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665 [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713 [fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566 [fdo#108840]: https://bugs.freedesktop.org/show_bug.cgi?id=108840 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#110789]: https://bugs.freedesktop.org/show_bug.cgi?id=110789 [fdo#110913 ]: https://bugs.freedesktop.org/show_bug.cgi?id=110913 [fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912 [k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133 Participating hosts (7 -> 6) ------------------------------ Missing (1): shard-skl Build changes ------------- * IGT: IGT_5059 -> IGTPW_3163 * Linux: CI_DRM_6284 -> CI_DRM_6286 CI_DRM_6284: f992a9cb038edbdd5ff20a1ed3410e8b95879bcf @ git://anongit.freedesktop.org/gfx-ci/linux CI_DRM_6286: 4853198e8f13330c123082ef1f0759d476ca62d8 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_3163: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/ IGT_5059: 1f67ee0d09d6513f487f2be74aae9700e755258a @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3163/ _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: failure for runner: add --list-all and --blacklist (rev4) 2019-06-14 13:24 [igt-dev] [PATCH] runner: add --list-all and --blacklist Oleg Vasilev ` (6 preceding siblings ...) 2019-06-18 2:11 ` [igt-dev] ✓ Fi.CI.IGT: success for runner: add --list-all and --blacklist (rev3) Patchwork @ 2019-06-18 9:36 ` Patchwork 2019-06-18 9:41 ` Petri Latvala 2019-06-18 10:39 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork 2019-06-18 20:05 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 9 siblings, 1 reply; 17+ messages in thread From: Patchwork @ 2019-06-18 9:36 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev == Series Details == Series: runner: add --list-all and --blacklist (rev4) URL : https://patchwork.freedesktop.org/series/62106/ State : failure == Summary == CI Bug Log - changes from CI_DRM_6290 -> IGTPW_3168 ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with IGTPW_3168 absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_3168, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI. External URL: https://patchwork.freedesktop.org/api/1.0/series/62106/revisions/4/mbox/ Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_3168: ### IGT changes ### #### Possible regressions #### * igt@gem_exec_suspend@basic-s3: - fi-cfl-guc: [PASS][1] -> [DMESG-WARN][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/fi-cfl-guc/igt@gem_exec_suspend@basic-s3.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/fi-cfl-guc/igt@gem_exec_suspend@basic-s3.html * igt@runner@aborted: - fi-cfl-guc: NOTRUN -> [FAIL][3] [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/fi-cfl-guc/igt@runner@aborted.html Known issues ------------ Here are the changes found in IGTPW_3168 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@i915_pm_rpm@module-reload: - fi-hsw-4770: [PASS][4] -> [INCOMPLETE][5] ([fdo#107807]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/fi-hsw-4770/igt@i915_pm_rpm@module-reload.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/fi-hsw-4770/igt@i915_pm_rpm@module-reload.html #### Possible fixes #### * igt@gem_render_tiled_blits@basic: - fi-icl-u3: [DMESG-WARN][6] ([fdo#107724]) -> [PASS][7] [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/fi-icl-u3/igt@gem_render_tiled_blits@basic.html [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/fi-icl-u3/igt@gem_render_tiled_blits@basic.html * igt@kms_frontbuffer_tracking@basic: - fi-hsw-peppy: [DMESG-WARN][8] ([fdo#102614]) -> [PASS][9] [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html [fdo#102614]: https://bugs.freedesktop.org/show_bug.cgi?id=102614 [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724 [fdo#107807]: https://bugs.freedesktop.org/show_bug.cgi?id=107807 Participating hosts (51 -> 37) ------------------------------ Additional (1): fi-icl-u2 Missing (15): fi-kbl-soraka fi-cml-u2 fi-ilk-m540 fi-hsw-4200u fi-byt-j1900 fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-whl-u fi-kbl-x1275 fi-skl-iommu fi-kbl-8809g fi-byt-clapper fi-bdw-samus fi-cml-u Build changes ------------- * IGT: IGT_5059 -> IGTPW_3168 CI_DRM_6290: a0fa10b5d68fd65375029dd8b61d6c8c6aa1413f @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_3168: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/ IGT_5059: 1f67ee0d09d6513f487f2be74aae9700e755258a @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/ _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] ✗ Fi.CI.BAT: failure for runner: add --list-all and --blacklist (rev4) 2019-06-18 9:36 ` [igt-dev] ✗ Fi.CI.BAT: failure for runner: add --list-all and --blacklist (rev4) Patchwork @ 2019-06-18 9:41 ` Petri Latvala 0 siblings, 0 replies; 17+ messages in thread From: Petri Latvala @ 2019-06-18 9:41 UTC (permalink / raw) To: igt-dev On Tue, Jun 18, 2019 at 09:36:20AM +0000, Patchwork wrote: > == Series Details == > > Series: runner: add --list-all and --blacklist (rev4) > URL : https://patchwork.freedesktop.org/series/62106/ > State : failure > > == Summary == > > CI Bug Log - changes from CI_DRM_6290 -> IGTPW_3168 > ==================================================== > > Summary > ------- > > **FAILURE** > > Serious unknown changes coming with IGTPW_3168 absolutely need to be > verified manually. > > If you think the reported changes have nothing to do with the changes > introduced in IGTPW_3168, please notify your bug team to allow them > to document this new failure mode, which will reduce false positives in CI. > > External URL: https://patchwork.freedesktop.org/api/1.0/series/62106/revisions/4/mbox/ > > Possible new issues > ------------------- > > Here are the unknown changes that may have been introduced in IGTPW_3168: > > ### IGT changes ### > > #### Possible regressions #### > > * igt@gem_exec_suspend@basic-s3: > - fi-cfl-guc: [PASS][1] -> [DMESG-WARN][2] > [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/fi-cfl-guc/igt@gem_exec_suspend@basic-s3.html > [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/fi-cfl-guc/igt@gem_exec_suspend@basic-s3.html > > * igt@runner@aborted: > - fi-cfl-guc: NOTRUN -> [FAIL][3] > [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/fi-cfl-guc/igt@runner@aborted.html CC Martin _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for runner: add --list-all and --blacklist (rev4) 2019-06-14 13:24 [igt-dev] [PATCH] runner: add --list-all and --blacklist Oleg Vasilev ` (7 preceding siblings ...) 2019-06-18 9:36 ` [igt-dev] ✗ Fi.CI.BAT: failure for runner: add --list-all and --blacklist (rev4) Patchwork @ 2019-06-18 10:39 ` Patchwork 2019-06-18 20:05 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 9 siblings, 0 replies; 17+ messages in thread From: Patchwork @ 2019-06-18 10:39 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev == Series Details == Series: runner: add --list-all and --blacklist (rev4) URL : https://patchwork.freedesktop.org/series/62106/ State : success == Summary == CI Bug Log - changes from CI_DRM_6290 -> IGTPW_3168 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://patchwork.freedesktop.org/api/1.0/series/62106/revisions/4/mbox/ Known issues ------------ Here are the changes found in IGTPW_3168 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_exec_suspend@basic-s3: - fi-cfl-guc: [PASS][1] -> [DMESG-WARN][2] ([fdo#110943]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/fi-cfl-guc/igt@gem_exec_suspend@basic-s3.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/fi-cfl-guc/igt@gem_exec_suspend@basic-s3.html * igt@i915_pm_rpm@module-reload: - fi-hsw-4770: [PASS][3] -> [INCOMPLETE][4] ([fdo#107807]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/fi-hsw-4770/igt@i915_pm_rpm@module-reload.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/fi-hsw-4770/igt@i915_pm_rpm@module-reload.html #### Possible fixes #### * igt@gem_render_tiled_blits@basic: - fi-icl-u3: [DMESG-WARN][5] ([fdo#107724]) -> [PASS][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/fi-icl-u3/igt@gem_render_tiled_blits@basic.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/fi-icl-u3/igt@gem_render_tiled_blits@basic.html * igt@kms_frontbuffer_tracking@basic: - fi-hsw-peppy: [DMESG-WARN][7] ([fdo#102614]) -> [PASS][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html [fdo#102614]: https://bugs.freedesktop.org/show_bug.cgi?id=102614 [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724 [fdo#107807]: https://bugs.freedesktop.org/show_bug.cgi?id=107807 [fdo#110943]: https://bugs.freedesktop.org/show_bug.cgi?id=110943 Participating hosts (51 -> 37) ------------------------------ Additional (1): fi-icl-u2 Missing (15): fi-kbl-soraka fi-cml-u2 fi-ilk-m540 fi-hsw-4200u fi-byt-j1900 fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-whl-u fi-kbl-x1275 fi-skl-iommu fi-kbl-8809g fi-byt-clapper fi-bdw-samus fi-cml-u Build changes ------------- * IGT: IGT_5059 -> IGTPW_3168 CI_DRM_6290: a0fa10b5d68fd65375029dd8b61d6c8c6aa1413f @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_3168: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/ IGT_5059: 1f67ee0d09d6513f487f2be74aae9700e755258a @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/ _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for runner: add --list-all and --blacklist (rev4) 2019-06-14 13:24 [igt-dev] [PATCH] runner: add --list-all and --blacklist Oleg Vasilev ` (8 preceding siblings ...) 2019-06-18 10:39 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork @ 2019-06-18 20:05 ` Patchwork 9 siblings, 0 replies; 17+ messages in thread From: Patchwork @ 2019-06-18 20:05 UTC (permalink / raw) To: Oleg Vasilev; +Cc: igt-dev == Series Details == Series: runner: add --list-all and --blacklist (rev4) URL : https://patchwork.freedesktop.org/series/62106/ State : success == Summary == CI Bug Log - changes from CI_DRM_6290_full -> IGTPW_3168_full ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://patchwork.freedesktop.org/api/1.0/series/62106/revisions/4/mbox/ Known issues ------------ Here are the changes found in IGTPW_3168_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_eio@in-flight-immediate: - shard-apl: [PASS][1] -> [DMESG-WARN][2] ([fdo#110913 ]) +3 similar issues [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-apl7/igt@gem_eio@in-flight-immediate.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-apl5/igt@gem_eio@in-flight-immediate.html * igt@gem_eio@in-flight-suspend: - shard-kbl: [PASS][3] -> [DMESG-WARN][4] ([fdo#108566]) +2 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-kbl6/igt@gem_eio@in-flight-suspend.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-kbl6/igt@gem_eio@in-flight-suspend.html * igt@gem_eio@wait-1us: - shard-kbl: [PASS][5] -> [DMESG-WARN][6] ([fdo#110913 ]) +1 similar issue [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-kbl7/igt@gem_eio@wait-1us.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-kbl3/igt@gem_eio@wait-1us.html * igt@gem_persistent_relocs@forked-interruptible-faulting-reloc-thrashing: - shard-snb: [PASS][7] -> [DMESG-WARN][8] ([fdo#110789] / [fdo#110913 ]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-snb2/igt@gem_persistent_relocs@forked-interruptible-faulting-reloc-thrashing.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-snb1/igt@gem_persistent_relocs@forked-interruptible-faulting-reloc-thrashing.html * igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy: - shard-snb: [PASS][9] -> [DMESG-WARN][10] ([fdo#110913 ]) +1 similar issue [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-snb2/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-snb7/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html * igt@kms_cursor_crc@pipe-a-cursor-256x85-sliding: - shard-apl: [PASS][11] -> [FAIL][12] ([fdo#103232]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-apl2/igt@kms_cursor_crc@pipe-a-cursor-256x85-sliding.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-apl6/igt@kms_cursor_crc@pipe-a-cursor-256x85-sliding.html * igt@kms_cursor_crc@pipe-c-cursor-256x256-onscreen: - shard-kbl: [PASS][13] -> [FAIL][14] ([fdo#103232]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-kbl6/igt@kms_cursor_crc@pipe-c-cursor-256x256-onscreen.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-kbl7/igt@kms_cursor_crc@pipe-c-cursor-256x256-onscreen.html * igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions-varying-size: - shard-hsw: [PASS][15] -> [FAIL][16] ([fdo#103355]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-hsw4/igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions-varying-size.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-hsw6/igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions-varying-size.html * igt@kms_dp_dsc@basic-dsc-enable-edp: - shard-iclb: [PASS][17] -> [SKIP][18] ([fdo#109349]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-iclb6/igt@kms_dp_dsc@basic-dsc-enable-edp.html * igt@kms_flip@2x-plain-flip-interruptible: - shard-hsw: [PASS][19] -> [SKIP][20] ([fdo#109271]) +25 similar issues [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-hsw5/igt@kms_flip@2x-plain-flip-interruptible.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-hsw1/igt@kms_flip@2x-plain-flip-interruptible.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt: - shard-iclb: [PASS][21] -> [FAIL][22] ([fdo#103167]) +5 similar issues [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-iclb3/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-iclb4/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-mmap-gtt: - shard-glk: [PASS][23] -> [FAIL][24] ([fdo#103167]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-glk2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-mmap-gtt.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-glk2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-mmap-gtt.html * igt@kms_plane_lowres@pipe-a-tiling-x: - shard-iclb: [PASS][25] -> [FAIL][26] ([fdo#103166]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-iclb7/igt@kms_plane_lowres@pipe-a-tiling-x.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-iclb4/igt@kms_plane_lowres@pipe-a-tiling-x.html * igt@kms_psr@psr2_primary_mmap_cpu: - shard-iclb: [PASS][27] -> [SKIP][28] ([fdo#109441]) [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-iclb2/igt@kms_psr@psr2_primary_mmap_cpu.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-iclb3/igt@kms_psr@psr2_primary_mmap_cpu.html * igt@kms_vblank@pipe-a-ts-continuation-suspend: - shard-apl: [PASS][29] -> [DMESG-WARN][30] ([fdo#108566]) +2 similar issues [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-apl4/igt@kms_vblank@pipe-a-ts-continuation-suspend.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-apl5/igt@kms_vblank@pipe-a-ts-continuation-suspend.html #### Possible fixes #### * igt@gem_mmap_gtt@hang: - shard-kbl: [DMESG-WARN][31] ([fdo#110913 ]) -> [PASS][32] +3 similar issues [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-kbl6/igt@gem_mmap_gtt@hang.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-kbl4/igt@gem_mmap_gtt@hang.html * igt@gem_persistent_relocs@forked: - shard-apl: [INCOMPLETE][33] ([fdo#103927]) -> [PASS][34] [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-apl5/igt@gem_persistent_relocs@forked.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-apl8/igt@gem_persistent_relocs@forked.html * igt@gem_persistent_relocs@forked-interruptible-thrashing: - shard-snb: [DMESG-WARN][35] ([fdo#110789] / [fdo#110913 ]) -> [PASS][36] +1 similar issue [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-snb4/igt@gem_persistent_relocs@forked-interruptible-thrashing.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-snb5/igt@gem_persistent_relocs@forked-interruptible-thrashing.html - shard-apl: [DMESG-WARN][37] ([fdo#110913 ]) -> [PASS][38] +2 similar issues [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-apl2/igt@gem_persistent_relocs@forked-interruptible-thrashing.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-apl6/igt@gem_persistent_relocs@forked-interruptible-thrashing.html * igt@gem_softpin@noreloc-s3: - shard-kbl: [DMESG-WARN][39] ([fdo#108566]) -> [PASS][40] +1 similar issue [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-kbl2/igt@gem_softpin@noreloc-s3.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-kbl2/igt@gem_softpin@noreloc-s3.html * igt@gem_userptr_blits@map-fixed-invalidate-busy: - shard-snb: [DMESG-WARN][41] ([fdo#110913 ]) -> [PASS][42] +2 similar issues [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-snb5/igt@gem_userptr_blits@map-fixed-invalidate-busy.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-snb5/igt@gem_userptr_blits@map-fixed-invalidate-busy.html * igt@i915_pm_rpm@debugfs-read: - shard-iclb: [INCOMPLETE][43] ([fdo#107713] / [fdo#108840]) -> [PASS][44] [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-iclb2/igt@i915_pm_rpm@debugfs-read.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-iclb1/igt@i915_pm_rpm@debugfs-read.html * igt@i915_selftest@live_evict: - shard-kbl: [INCOMPLETE][45] ([fdo#103665] / [fdo#110938]) -> [PASS][46] [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-kbl3/igt@i915_selftest@live_evict.html [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-kbl1/igt@i915_selftest@live_evict.html * igt@i915_selftest@live_hangcheck: - shard-iclb: [INCOMPLETE][47] ([fdo#107713] / [fdo#108569]) -> [PASS][48] [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-iclb4/igt@i915_selftest@live_hangcheck.html [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-iclb8/igt@i915_selftest@live_hangcheck.html * igt@i915_suspend@fence-restore-untiled: - shard-apl: [DMESG-WARN][49] ([fdo#108566]) -> [PASS][50] [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-apl3/igt@i915_suspend@fence-restore-untiled.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-apl7/igt@i915_suspend@fence-restore-untiled.html * igt@kms_cursor_crc@pipe-b-cursor-suspend: - shard-kbl: [INCOMPLETE][51] ([fdo#103665]) -> [PASS][52] [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-kbl2/igt@kms_cursor_crc@pipe-b-cursor-suspend.html [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-kbl7/igt@kms_cursor_crc@pipe-b-cursor-suspend.html * igt@kms_flip@2x-flip-vs-expired-vblank: - shard-glk: [FAIL][53] ([fdo#105363]) -> [PASS][54] +1 similar issue [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-glk4/igt@kms_flip@2x-flip-vs-expired-vblank.html [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-glk6/igt@kms_flip@2x-flip-vs-expired-vblank.html * igt@kms_flip@2x-plain-flip: - shard-hsw: [SKIP][55] ([fdo#109271]) -> [PASS][56] +24 similar issues [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-hsw1/igt@kms_flip@2x-plain-flip.html [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-hsw6/igt@kms_flip@2x-plain-flip.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-render: - shard-iclb: [FAIL][57] ([fdo#103167]) -> [PASS][58] +10 similar issues [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-iclb3/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-render.html [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-iclb1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-render.html * igt@kms_psr2_su@page_flip: - shard-iclb: [SKIP][59] ([fdo#109642]) -> [PASS][60] [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-iclb3/igt@kms_psr2_su@page_flip.html [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-iclb2/igt@kms_psr2_su@page_flip.html * igt@kms_psr@psr2_primary_page_flip: - shard-iclb: [SKIP][61] ([fdo#109441]) -> [PASS][62] +1 similar issue [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-iclb8/igt@kms_psr@psr2_primary_page_flip.html [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-iclb2/igt@kms_psr@psr2_primary_page_flip.html * igt@kms_sysfs_edid_timing: - shard-iclb: [FAIL][63] ([fdo#100047]) -> [PASS][64] [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6290/shard-iclb3/igt@kms_sysfs_edid_timing.html [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/shard-iclb5/igt@kms_sysfs_edid_timing.html [fdo#100047]: https://bugs.freedesktop.org/show_bug.cgi?id=100047 [fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166 [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167 [fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232 [fdo#103355]: https://bugs.freedesktop.org/show_bug.cgi?id=103355 [fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665 [fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927 [fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363 [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713 [fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566 [fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569 [fdo#108840]: https://bugs.freedesktop.org/show_bug.cgi?id=108840 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642 [fdo#110789]: https://bugs.freedesktop.org/show_bug.cgi?id=110789 [fdo#110913 ]: https://bugs.freedesktop.org/show_bug.cgi?id=110913 [fdo#110938]: https://bugs.freedesktop.org/show_bug.cgi?id=110938 Participating hosts (10 -> 6) ------------------------------ Missing (4): pig-skl-6260u shard-skl pig-hsw-4770r pig-glk-j5005 Build changes ------------- * IGT: IGT_5059 -> IGTPW_3168 * Piglit: piglit_4509 -> None CI_DRM_6290: a0fa10b5d68fd65375029dd8b61d6c8c6aa1413f @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_3168: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/ IGT_5059: 1f67ee0d09d6513f487f2be74aae9700e755258a @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3168/ _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2019-06-18 20:05 UTC | newest] Thread overview: 17+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2019-06-14 13:24 [igt-dev] [PATCH] runner: add --list-all and --blacklist Oleg Vasilev 2019-06-14 13:43 ` [igt-dev] ✗ Fi.CI.BAT: failure for " Patchwork 2019-06-14 14:28 ` [igt-dev] [PATCH] " Petri Latvala 2019-06-17 11:49 ` [igt-dev] [PATCH v2] " Oleg Vasilev 2019-06-17 12:41 ` Petri Latvala 2019-06-17 13:41 ` [igt-dev] [PATCH v3] " Oleg Vasilev 2019-06-18 8:11 ` Petri Latvala 2019-06-18 9:07 ` [igt-dev] [PATCH v4] " Oleg Vasilev 2019-06-18 9:26 ` Petri Latvala 2019-06-17 14:14 ` [igt-dev] ✓ Fi.CI.BAT: success for runner: add --list-all and --blacklist (rev2) Patchwork 2019-06-17 15:31 ` [igt-dev] ✓ Fi.CI.BAT: success for runner: add --list-all and --blacklist (rev3) Patchwork 2019-06-17 23:23 ` [igt-dev] ✓ Fi.CI.IGT: success for runner: add --list-all and --blacklist (rev2) Patchwork 2019-06-18 2:11 ` [igt-dev] ✓ Fi.CI.IGT: success for runner: add --list-all and --blacklist (rev3) Patchwork 2019-06-18 9:36 ` [igt-dev] ✗ Fi.CI.BAT: failure for runner: add --list-all and --blacklist (rev4) Patchwork 2019-06-18 9:41 ` Petri Latvala 2019-06-18 10:39 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork 2019-06-18 20:05 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox