* [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads
@ 2020-06-16 14:14 Arkadiusz Hiler
2020-06-16 14:14 ` [igt-dev] [PATCH i-g-t 2/3] lib/core: Handle asserts in threads Arkadiusz Hiler
` (7 more replies)
0 siblings, 8 replies; 12+ messages in thread
From: Arkadiusz Hiler @ 2020-06-16 14:14 UTC (permalink / raw)
To: igt-dev; +Cc: Petri Latvala
So that we know what's the source of messages.
igt_thread.c is created to facilitate more threading-related
functionality that will come in the following patch.
Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
---
lib/Makefile.sources | 2 ++
lib/igt_core.c | 44 +++++++++++++++++++++++++++++++++++++-------
lib/igt_thread.c | 39 +++++++++++++++++++++++++++++++++++++++
lib/igt_thread.h | 24 ++++++++++++++++++++++++
lib/meson.build | 1 +
5 files changed, 103 insertions(+), 7 deletions(-)
create mode 100644 lib/igt_thread.c
create mode 100644 lib/igt_thread.h
diff --git a/lib/Makefile.sources b/lib/Makefile.sources
index 09aedb40..00374c97 100644
--- a/lib/Makefile.sources
+++ b/lib/Makefile.sources
@@ -64,6 +64,8 @@ lib_source_list = \
igt_sysfs.h \
igt_sysrq.c \
igt_sysrq.h \
+ igt_thread.c \
+ igt_thread.h \
igt_x86.h \
igt_x86.c \
igt_vec.c \
diff --git a/lib/igt_core.c b/lib/igt_core.c
index cbcc3f4d..c95295c7 100644
--- a/lib/igt_core.c
+++ b/lib/igt_core.c
@@ -72,6 +72,7 @@
#include "igt_rc.h"
#include "igt_list.h"
#include "igt_device_scan.h"
+#include "igt_thread.h"
#define UNW_LOCAL_ONLY
#include <libunwind.h>
@@ -2687,6 +2688,12 @@ void igt_log(const char *domain, enum igt_log_level level, const char *format, .
va_end(args);
}
+static pthread_key_t __vlog_line_continuation;
+
+igt_constructor {
+ pthread_key_create(&__vlog_line_continuation, NULL);
+}
+
/**
* igt_vlog:
* @domain: the log domain, or NULL for no domain
@@ -2705,6 +2712,7 @@ void igt_vlog(const char *domain, enum igt_log_level level, const char *format,
{
FILE *file;
char *line, *formatted_line;
+ char *thread_id;
const char *program_name;
const char *igt_log_level_str[] = {
"DEBUG",
@@ -2713,7 +2721,8 @@ void igt_vlog(const char *domain, enum igt_log_level level, const char *format,
"CRITICAL",
"NONE"
};
- static bool line_continuation = false;
+
+ static pthread_mutex_t print_mutex = PTHREAD_MUTEX_INITIALIZER;
assert(format);
@@ -2723,23 +2732,37 @@ void igt_vlog(const char *domain, enum igt_log_level level, const char *format,
program_name = command_str;
#endif
+
+ if (igt_thread_is_main()) {
+ thread_id = strdup("");
+ } else {
+ if (asprintf(&thread_id, "[thread:%d] ", gettid()) == -1)
+ thread_id = NULL;
+ }
+
+ if (!thread_id)
+ goto out;
+
if (list_subtests && level <= IGT_LOG_WARN)
return;
if (vasprintf(&line, format, args) == -1)
return;
- if (line_continuation) {
+ if (pthread_getspecific(__vlog_line_continuation)) {
formatted_line = strdup(line);
if (!formatted_line)
goto out;
- } else if (asprintf(&formatted_line, "(%s:%d) %s%s%s: %s", program_name,
- getpid(), (domain) ? domain : "", (domain) ? "-" : "",
+ } else if (asprintf(&formatted_line, "(%s:%d) %s%s%s%s: %s", program_name,
+ getpid(), thread_id, (domain) ? domain : "", (domain) ? "-" : "",
igt_log_level_str[level], line) == -1) {
goto out;
}
- line_continuation = line[strlen(line) - 1] != '\n';
+ if (line[strlen(line) - 1] == '\n')
+ pthread_setspecific(__vlog_line_continuation, (void*) false);
+ else
+ pthread_setspecific(__vlog_line_continuation, (void*) true);
/* append log buffer */
_igt_log_buffer_append(formatted_line);
@@ -2758,6 +2781,8 @@ void igt_vlog(const char *domain, enum igt_log_level level, const char *format,
goto out;
}
+ pthread_mutex_lock(&print_mutex);
+
/* use stderr for warning messages and above */
if (level >= IGT_LOG_WARN) {
file = stderr;
@@ -2768,13 +2793,18 @@ void igt_vlog(const char *domain, enum igt_log_level level, const char *format,
/* prepend all except information messages with process, domain and log
* level information */
- if (level != IGT_LOG_INFO)
+ if (level != IGT_LOG_INFO) {
fwrite(formatted_line, sizeof(char), strlen(formatted_line),
file);
- else
+ } else {
+ fwrite(thread_id, sizeof(char), strlen(thread_id), file);
fwrite(line, sizeof(char), strlen(line), file);
+ }
+
+ pthread_mutex_unlock(&print_mutex);
out:
+ free(thread_id);
free(line);
}
diff --git a/lib/igt_thread.c b/lib/igt_thread.c
new file mode 100644
index 00000000..deab6225
--- /dev/null
+++ b/lib/igt_thread.c
@@ -0,0 +1,39 @@
+/*
+ * Copyright © 2020 Intel Corporation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+#include <pthread.h>
+
+#include "igt_core.h"
+#include "igt_thread.h"
+
+static pthread_key_t __igt_is_main_thread;
+
+bool igt_thread_is_main(void)
+{
+ return pthread_getspecific(__igt_is_main_thread) != NULL;
+}
+
+igt_constructor {
+ pthread_key_create(&__igt_is_main_thread, NULL);
+ pthread_setspecific(__igt_is_main_thread, (void*) 0x1);
+}
diff --git a/lib/igt_thread.h b/lib/igt_thread.h
new file mode 100644
index 00000000..b16f803f
--- /dev/null
+++ b/lib/igt_thread.h
@@ -0,0 +1,24 @@
+/*
+ * Copyright © 2020 Intel Corporation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+bool igt_thread_is_main(void);
diff --git a/lib/meson.build b/lib/meson.build
index 6cf78663..6c71ae3d 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -26,6 +26,7 @@ lib_sources = [
'igt_syncobj.c',
'igt_sysfs.c',
'igt_sysrq.c',
+ 'igt_thread.c',
'igt_vec.c',
'igt_vgem.c',
'igt_x86.c',
--
2.25.4
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 12+ messages in thread* [igt-dev] [PATCH i-g-t 2/3] lib/core: Handle asserts in threads 2020-06-16 14:14 [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Arkadiusz Hiler @ 2020-06-16 14:14 ` Arkadiusz Hiler 2020-06-18 12:59 ` Petri Latvala 2020-06-16 14:14 ` [igt-dev] [PATCH i-g-t 3/3] igt/core: Disallow igt_require/skip in non-main threads Arkadiusz Hiler ` (6 subsequent siblings) 7 siblings, 1 reply; 12+ messages in thread From: Arkadiusz Hiler @ 2020-06-16 14:14 UTC (permalink / raw) To: igt-dev; +Cc: Petri Latvala Since IGT is using magic control blocks (igt_subtest et al.) asserts jump out the them using longjmp() causing a bunch of confusing messages and occasionally crashing the whole process. This is not the behavior we want :-) With this patch: 1. simple_main, dynamic and subtest each clears the thread failure state at the start 2. each of those blocks also asserts no thread failures at the end 3. igt_assert() in non-main thread prints out the error + stacktrace and marks that we have failed thread Issue: https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/issues/55 Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> --- lib/igt_core.c | 12 +++ lib/igt_thread.c | 30 ++++++ lib/igt_thread.h | 4 + lib/tests/igt_tests_common.h | 22 ++++ lib/tests/igt_thread.c | 194 +++++++++++++++++++++++++++++++++++ lib/tests/meson.build | 1 + 6 files changed, 263 insertions(+) create mode 100644 lib/tests/igt_thread.c diff --git a/lib/igt_core.c b/lib/igt_core.c index c95295c7..ccf06cf4 100644 --- a/lib/igt_core.c +++ b/lib/igt_core.c @@ -1272,6 +1272,7 @@ bool __igt_run_subtest(const char *subtest_name, const char *file, const int lin fprintf(stderr, "Starting subtest: %s\n", subtest_name); _igt_log_buffer_reset(); + igt_thread_clear_fail_state(); igt_gettime(&subtest_time); return (in_subtest = subtest_name); @@ -1302,6 +1303,7 @@ bool __igt_run_dynamic_subtest(const char *dynamic_subtest_name) fprintf(stderr, "Starting dynamic subtest: %s\n", dynamic_subtest_name); _igt_log_buffer_reset(); + igt_thread_clear_fail_state(); _igt_dynamic_tests_executed++; @@ -1510,6 +1512,8 @@ void __igt_skip_check(const char *file, const int line, */ void igt_success(void) { + igt_thread_assert_no_failures(); + if (in_subtest && !in_dynamic_subtest && _igt_dynamic_tests_executed >= 0) { /* * We're exiting a dynamic container, yield a result @@ -1549,6 +1553,11 @@ void igt_fail(int exitcode) { assert(exitcode != IGT_EXIT_SUCCESS && exitcode != IGT_EXIT_SKIP); + if (!igt_thread_is_main()) { + igt_thread_fail(); + pthread_exit(NULL); + } + igt_debug_wait_for_keypress("failure"); /* Exit immediately if the test is already exiting and igt_fail is @@ -2049,6 +2058,9 @@ void igt_exit(void) { int tmp; + if (!test_with_subtests) + igt_thread_assert_no_failures(); + igt_exit_called = true; if (igt_key_file) diff --git a/lib/igt_thread.c b/lib/igt_thread.c index deab6225..5bdda410 100644 --- a/lib/igt_thread.c +++ b/lib/igt_thread.c @@ -22,12 +22,42 @@ */ #include <pthread.h> +#include <stdlib.h> +#include <stdatomic.h> #include "igt_core.h" #include "igt_thread.h" static pthread_key_t __igt_is_main_thread; +static _Atomic(bool) __thread_failed = false; + +void igt_thread_clear_fail_state(void) +{ + assert(igt_thread_is_main()); + + __thread_failed = false; +} + +void igt_thread_fail(void) +{ + assert(!igt_thread_is_main()); + + __thread_failed = true; +} + +void igt_thread_assert_no_failures(void) +{ + assert(igt_thread_is_main()); + + if (__thread_failed) { + /* so we won't get stuck in a loop */ + igt_thread_clear_fail_state(); + igt_critical("Failure in a thread!\n"); + igt_fail(IGT_EXIT_FAILURE); + } +} + bool igt_thread_is_main(void) { return pthread_getspecific(__igt_is_main_thread) != NULL; diff --git a/lib/igt_thread.h b/lib/igt_thread.h index b16f803f..4b9c222d 100644 --- a/lib/igt_thread.h +++ b/lib/igt_thread.h @@ -21,4 +21,8 @@ * IN THE SOFTWARE. */ +void igt_thread_clear_fail_state(void); +void igt_thread_fail(void); +void igt_thread_assert_no_failures(void); + bool igt_thread_is_main(void); diff --git a/lib/tests/igt_tests_common.h b/lib/tests/igt_tests_common.h index fa8ad920..058f6265 100644 --- a/lib/tests/igt_tests_common.h +++ b/lib/tests/igt_tests_common.h @@ -30,6 +30,7 @@ #include <errno.h> #include <sys/stat.h> #include <fcntl.h> +#include <regex.h> /* * We need to hide assert from the cocci igt test refactor spatch. @@ -161,4 +162,25 @@ static inline void read_whole_pipe(int fd, char *buf, size_t buflen) offset += readlen; } } + +static inline bool matches(char *str, const char *regex) +{ + int ret; + regex_t reg; + + ret = regcomp(®, regex, REG_EXTENDED | REG_NEWLINE); + + if (ret == 0) + ret = regexec(®, str, 0, NULL, 0); + + if (0 != ret && REG_NOMATCH != ret) { + char err[256]; + regerror(ret, ®, err, sizeof(err)); + printf("%s\n", err); + abort(); + } + + regfree(®); + return !ret; +} #endif diff --git a/lib/tests/igt_thread.c b/lib/tests/igt_thread.c new file mode 100644 index 00000000..1a734e6d --- /dev/null +++ b/lib/tests/igt_thread.c @@ -0,0 +1,194 @@ +/* + * Copyright © 2020 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + * + */ + +#include <pthread.h> + +#include "drmtest.h" +#include "igt_core.h" +#include "igt_tests_common.h" + +char prog[] = "igt_thread"; +char *fake_argv[] = { prog }; +int fake_argc = ARRAY_SIZE(fake_argv); + +static void *succes_thread(void *data) +{ + return NULL; +} + +static void *failure_thread(void *data) +{ + igt_assert(false); + return NULL; +} + +static void one_subtest_fail(void) { + igt_subtest_init(fake_argc, fake_argv); + + igt_subtest("subtest-a") { + pthread_t thread; + pthread_create(&thread, 0, failure_thread, NULL); + pthread_join(thread, NULL); + } + + igt_subtest("subtest-b") { + pthread_t thread; + pthread_create(&thread, 0, succes_thread, NULL); + pthread_join(thread, NULL); + } + + igt_exit(); +} + +static void one_dynamic_fail(void) { + igt_subtest_init(fake_argc, fake_argv); + + igt_subtest_with_dynamic("dynamic-container") { + igt_dynamic("dynamic-a") { + pthread_t thread; + pthread_create(&thread, 0, failure_thread, NULL); + pthread_join(thread, NULL); + } + + igt_dynamic("dynamic-b") { + pthread_t thread; + pthread_create(&thread, 0, succes_thread, NULL); + pthread_join(thread, NULL); + } + } + + igt_exit(); +} + +static void simple_success(void) { + pthread_t thread; + + igt_simple_init(fake_argc, fake_argv); + + pthread_create(&thread, 0, succes_thread, NULL); + pthread_join(thread, NULL); + + igt_exit(); +} + +static void simple_failure(void) { + pthread_t thread; + + igt_simple_init(fake_argc, fake_argv); + + pthread_create(&thread, 0, failure_thread, NULL); + pthread_join(thread, NULL); + + igt_exit(); +} + +int main(int argc, char **argv) +{ + int status; + int outfd; + pid_t pid; + + /* failing should be limited just to a single subtest */ { + static char out[4096]; + + pid = do_fork_bg_with_pipes(one_subtest_fail, &outfd, NULL); + + read_whole_pipe(outfd, out, sizeof(out)); + + internal_assert(safe_wait(pid, &status) != -1); + internal_assert_wexited(status, IGT_EXIT_FAILURE); + + internal_assert(matches(out, "\\[thread:.*\\] Stack trace")); + internal_assert(strstr(out, "Subtest subtest-a: FAIL")); + internal_assert(strstr(out, "Subtest subtest-b: SUCCESS")); + + close(outfd); + } + + /* failing should be limited just to a dynamic subsubtest */ { + static char out[4096]; + + pid = do_fork_bg_with_pipes(one_dynamic_fail, &outfd, NULL); + + read_whole_pipe(outfd, out, sizeof(out)); + + internal_assert(safe_wait(pid, &status) != -1); + internal_assert_wexited(status, IGT_EXIT_FAILURE); + + internal_assert(matches(out, "\\[thread:.*\\] Stack trace")); + internal_assert(strstr(out, "Dynamic subtest dynamic-a: FAIL")); + internal_assert(strstr(out, "Dynamic subtest dynamic-b: SUCCESS")); + + close(outfd); + } + + /* success in a simple test */ { + static char out[4096]; + + pid = do_fork_bg_with_pipes(simple_success, &outfd, NULL); + + read_whole_pipe(outfd, out, sizeof(out)); + + internal_assert(safe_wait(pid, &status) != -1); + internal_assert_wexited(status, IGT_EXIT_SUCCESS); + + + internal_assert(matches(out, "^SUCCESS")); + + close(outfd); + } + + /* success in a simple test */ { + static char out[4096]; + + pid = do_fork_bg_with_pipes(simple_success, &outfd, NULL); + + read_whole_pipe(outfd, out, sizeof(out)); + + internal_assert(safe_wait(pid, &status) != -1); + internal_assert_wexited(status, IGT_EXIT_SUCCESS); + + internal_assert(matches(out, "^SUCCESS")); + + close(outfd); + } + + /* failure in a simple test */ { + static char out[4096]; + + pid = do_fork_bg_with_pipes(simple_failure, &outfd, NULL); + + read_whole_pipe(outfd, out, sizeof(out)); + + internal_assert(safe_wait(pid, &status) != -1); + internal_assert_wexited(status, IGT_EXIT_FAILURE); + + internal_assert(matches(out, "\\[thread:.*\\] Stack trace")); + internal_assert(matches(out, "^FAIL")); + + close(outfd); + } + + return 0; +} diff --git a/lib/tests/meson.build b/lib/tests/meson.build index 47ef303a..9cf5ff47 100644 --- a/lib/tests/meson.build +++ b/lib/tests/meson.build @@ -18,6 +18,7 @@ lib_tests = [ 'igt_simulation', 'igt_stats', 'igt_subtest_group', + 'igt_thread', 'i915_perf_data_alignment', ] -- 2.25.4 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 2/3] lib/core: Handle asserts in threads 2020-06-16 14:14 ` [igt-dev] [PATCH i-g-t 2/3] lib/core: Handle asserts in threads Arkadiusz Hiler @ 2020-06-18 12:59 ` Petri Latvala 0 siblings, 0 replies; 12+ messages in thread From: Petri Latvala @ 2020-06-18 12:59 UTC (permalink / raw) To: Arkadiusz Hiler; +Cc: igt-dev On Tue, Jun 16, 2020 at 05:14:49PM +0300, Arkadiusz Hiler wrote: > Since IGT is using magic control blocks (igt_subtest et al.) asserts > jump out the them using longjmp() causing a bunch of confusing messages > and occasionally crashing the whole process. > > This is not the behavior we want :-) > > With this patch: > > 1. simple_main, dynamic and subtest each clears the thread failure state > at the start > > 2. each of those blocks also asserts no thread failures at the end > > 3. igt_assert() in non-main thread prints out the error + stacktrace > and marks that we have failed thread > > Issue: https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/issues/55 > Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> > --- > lib/igt_core.c | 12 +++ > lib/igt_thread.c | 30 ++++++ > lib/igt_thread.h | 4 + > lib/tests/igt_tests_common.h | 22 ++++ > lib/tests/igt_thread.c | 194 +++++++++++++++++++++++++++++++++++ > lib/tests/meson.build | 1 + > 6 files changed, 263 insertions(+) > create mode 100644 lib/tests/igt_thread.c > > diff --git a/lib/igt_core.c b/lib/igt_core.c > index c95295c7..ccf06cf4 100644 > --- a/lib/igt_core.c > +++ b/lib/igt_core.c > @@ -1272,6 +1272,7 @@ bool __igt_run_subtest(const char *subtest_name, const char *file, const int lin > fprintf(stderr, "Starting subtest: %s\n", subtest_name); > > _igt_log_buffer_reset(); > + igt_thread_clear_fail_state(); > > igt_gettime(&subtest_time); > return (in_subtest = subtest_name); > @@ -1302,6 +1303,7 @@ bool __igt_run_dynamic_subtest(const char *dynamic_subtest_name) > fprintf(stderr, "Starting dynamic subtest: %s\n", dynamic_subtest_name); > > _igt_log_buffer_reset(); > + igt_thread_clear_fail_state(); > > _igt_dynamic_tests_executed++; > > @@ -1510,6 +1512,8 @@ void __igt_skip_check(const char *file, const int line, > */ > void igt_success(void) > { > + igt_thread_assert_no_failures(); > + > if (in_subtest && !in_dynamic_subtest && _igt_dynamic_tests_executed >= 0) { > /* > * We're exiting a dynamic container, yield a result > @@ -1549,6 +1553,11 @@ void igt_fail(int exitcode) > { > assert(exitcode != IGT_EXIT_SUCCESS && exitcode != IGT_EXIT_SKIP); > > + if (!igt_thread_is_main()) { > + igt_thread_fail(); > + pthread_exit(NULL); > + } > + > igt_debug_wait_for_keypress("failure"); > > /* Exit immediately if the test is already exiting and igt_fail is > @@ -2049,6 +2058,9 @@ void igt_exit(void) > { > int tmp; > > + if (!test_with_subtests) > + igt_thread_assert_no_failures(); > + > igt_exit_called = true; > > if (igt_key_file) > diff --git a/lib/igt_thread.c b/lib/igt_thread.c > index deab6225..5bdda410 100644 > --- a/lib/igt_thread.c > +++ b/lib/igt_thread.c > @@ -22,12 +22,42 @@ > */ > > #include <pthread.h> > +#include <stdlib.h> > +#include <stdatomic.h> > > #include "igt_core.h" > #include "igt_thread.h" > > static pthread_key_t __igt_is_main_thread; > > +static _Atomic(bool) __thread_failed = false; > + > +void igt_thread_clear_fail_state(void) > +{ > + assert(igt_thread_is_main()); > + > + __thread_failed = false; > +} > + > +void igt_thread_fail(void) > +{ > + assert(!igt_thread_is_main()); > + > + __thread_failed = true; > +} > + > +void igt_thread_assert_no_failures(void) > +{ > + assert(igt_thread_is_main()); > + > + if (__thread_failed) { > + /* so we won't get stuck in a loop */ > + igt_thread_clear_fail_state(); > + igt_critical("Failure in a thread!\n"); > + igt_fail(IGT_EXIT_FAILURE); > + } > +} > + > bool igt_thread_is_main(void) > { > return pthread_getspecific(__igt_is_main_thread) != NULL; > diff --git a/lib/igt_thread.h b/lib/igt_thread.h > index b16f803f..4b9c222d 100644 > --- a/lib/igt_thread.h > +++ b/lib/igt_thread.h > @@ -21,4 +21,8 @@ > * IN THE SOFTWARE. > */ > > +void igt_thread_clear_fail_state(void); > +void igt_thread_fail(void); > +void igt_thread_assert_no_failures(void); > + > bool igt_thread_is_main(void); > diff --git a/lib/tests/igt_tests_common.h b/lib/tests/igt_tests_common.h > index fa8ad920..058f6265 100644 > --- a/lib/tests/igt_tests_common.h > +++ b/lib/tests/igt_tests_common.h > @@ -30,6 +30,7 @@ > #include <errno.h> > #include <sys/stat.h> > #include <fcntl.h> > +#include <regex.h> > > /* > * We need to hide assert from the cocci igt test refactor spatch. > @@ -161,4 +162,25 @@ static inline void read_whole_pipe(int fd, char *buf, size_t buflen) > offset += readlen; > } > } > + > +static inline bool matches(char *str, const char *regex) > +{ > + int ret; > + regex_t reg; > + > + ret = regcomp(®, regex, REG_EXTENDED | REG_NEWLINE); > + > + if (ret == 0) > + ret = regexec(®, str, 0, NULL, 0); > + > + if (0 != ret && REG_NOMATCH != ret) { > + char err[256]; > + regerror(ret, ®, err, sizeof(err)); > + printf("%s\n", err); > + abort(); > + } > + > + regfree(®); > + return !ret; > +} > #endif > diff --git a/lib/tests/igt_thread.c b/lib/tests/igt_thread.c > new file mode 100644 > index 00000000..1a734e6d > --- /dev/null > +++ b/lib/tests/igt_thread.c > @@ -0,0 +1,194 @@ > +/* > + * Copyright © 2020 Intel Corporation > + * > + * Permission is hereby granted, free of charge, to any person obtaining a > + * copy of this software and associated documentation files (the "Software"), > + * to deal in the Software without restriction, including without limitation > + * the rights to use, copy, modify, merge, publish, distribute, sublicense, > + * and/or sell copies of the Software, and to permit persons to whom the > + * Software is furnished to do so, subject to the following conditions: > + * > + * The above copyright notice and this permission notice (including the next > + * paragraph) shall be included in all copies or substantial portions of the > + * Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR > + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, > + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL > + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER > + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING > + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS > + * IN THE SOFTWARE. > + * > + */ > + > +#include <pthread.h> > + > +#include "drmtest.h" > +#include "igt_core.h" > +#include "igt_tests_common.h" > + > +char prog[] = "igt_thread"; > +char *fake_argv[] = { prog }; > +int fake_argc = ARRAY_SIZE(fake_argv); > + > +static void *succes_thread(void *data) Typo in the name: succes -> success Otherwise, Reviewed-by: Petri Latvala <petri.latvala@intel.com> > +{ > + return NULL; > +} > + > +static void *failure_thread(void *data) > +{ > + igt_assert(false); > + return NULL; > +} > + > +static void one_subtest_fail(void) { > + igt_subtest_init(fake_argc, fake_argv); > + > + igt_subtest("subtest-a") { > + pthread_t thread; > + pthread_create(&thread, 0, failure_thread, NULL); > + pthread_join(thread, NULL); > + } > + > + igt_subtest("subtest-b") { > + pthread_t thread; > + pthread_create(&thread, 0, succes_thread, NULL); > + pthread_join(thread, NULL); > + } > + > + igt_exit(); > +} > + > +static void one_dynamic_fail(void) { > + igt_subtest_init(fake_argc, fake_argv); > + > + igt_subtest_with_dynamic("dynamic-container") { > + igt_dynamic("dynamic-a") { > + pthread_t thread; > + pthread_create(&thread, 0, failure_thread, NULL); > + pthread_join(thread, NULL); > + } > + > + igt_dynamic("dynamic-b") { > + pthread_t thread; > + pthread_create(&thread, 0, succes_thread, NULL); > + pthread_join(thread, NULL); > + } > + } > + > + igt_exit(); > +} > + > +static void simple_success(void) { > + pthread_t thread; > + > + igt_simple_init(fake_argc, fake_argv); > + > + pthread_create(&thread, 0, succes_thread, NULL); > + pthread_join(thread, NULL); > + > + igt_exit(); > +} > + > +static void simple_failure(void) { > + pthread_t thread; > + > + igt_simple_init(fake_argc, fake_argv); > + > + pthread_create(&thread, 0, failure_thread, NULL); > + pthread_join(thread, NULL); > + > + igt_exit(); > +} > + > +int main(int argc, char **argv) > +{ > + int status; > + int outfd; > + pid_t pid; > + > + /* failing should be limited just to a single subtest */ { > + static char out[4096]; > + > + pid = do_fork_bg_with_pipes(one_subtest_fail, &outfd, NULL); > + > + read_whole_pipe(outfd, out, sizeof(out)); > + > + internal_assert(safe_wait(pid, &status) != -1); > + internal_assert_wexited(status, IGT_EXIT_FAILURE); > + > + internal_assert(matches(out, "\\[thread:.*\\] Stack trace")); > + internal_assert(strstr(out, "Subtest subtest-a: FAIL")); > + internal_assert(strstr(out, "Subtest subtest-b: SUCCESS")); > + > + close(outfd); > + } > + > + /* failing should be limited just to a dynamic subsubtest */ { > + static char out[4096]; > + > + pid = do_fork_bg_with_pipes(one_dynamic_fail, &outfd, NULL); > + > + read_whole_pipe(outfd, out, sizeof(out)); > + > + internal_assert(safe_wait(pid, &status) != -1); > + internal_assert_wexited(status, IGT_EXIT_FAILURE); > + > + internal_assert(matches(out, "\\[thread:.*\\] Stack trace")); > + internal_assert(strstr(out, "Dynamic subtest dynamic-a: FAIL")); > + internal_assert(strstr(out, "Dynamic subtest dynamic-b: SUCCESS")); > + > + close(outfd); > + } > + > + /* success in a simple test */ { > + static char out[4096]; > + > + pid = do_fork_bg_with_pipes(simple_success, &outfd, NULL); > + > + read_whole_pipe(outfd, out, sizeof(out)); > + > + internal_assert(safe_wait(pid, &status) != -1); > + internal_assert_wexited(status, IGT_EXIT_SUCCESS); > + > + > + internal_assert(matches(out, "^SUCCESS")); > + > + close(outfd); > + } > + > + /* success in a simple test */ { > + static char out[4096]; > + > + pid = do_fork_bg_with_pipes(simple_success, &outfd, NULL); > + > + read_whole_pipe(outfd, out, sizeof(out)); > + > + internal_assert(safe_wait(pid, &status) != -1); > + internal_assert_wexited(status, IGT_EXIT_SUCCESS); > + > + internal_assert(matches(out, "^SUCCESS")); > + > + close(outfd); > + } > + > + /* failure in a simple test */ { > + static char out[4096]; > + > + pid = do_fork_bg_with_pipes(simple_failure, &outfd, NULL); > + > + read_whole_pipe(outfd, out, sizeof(out)); > + > + internal_assert(safe_wait(pid, &status) != -1); > + internal_assert_wexited(status, IGT_EXIT_FAILURE); > + > + internal_assert(matches(out, "\\[thread:.*\\] Stack trace")); > + internal_assert(matches(out, "^FAIL")); > + > + close(outfd); > + } > + > + return 0; > +} > diff --git a/lib/tests/meson.build b/lib/tests/meson.build > index 47ef303a..9cf5ff47 100644 > --- a/lib/tests/meson.build > +++ b/lib/tests/meson.build > @@ -18,6 +18,7 @@ lib_tests = [ > 'igt_simulation', > 'igt_stats', > 'igt_subtest_group', > + 'igt_thread', > 'i915_perf_data_alignment', > ] > > -- > 2.25.4 > _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
* [igt-dev] [PATCH i-g-t 3/3] igt/core: Disallow igt_require/skip in non-main threads 2020-06-16 14:14 [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Arkadiusz Hiler 2020-06-16 14:14 ` [igt-dev] [PATCH i-g-t 2/3] lib/core: Handle asserts in threads Arkadiusz Hiler @ 2020-06-16 14:14 ` Arkadiusz Hiler 2020-06-18 12:59 ` Petri Latvala 2020-06-16 16:55 ` [igt-dev] ✗ GitLab.Pipeline: warning for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for " Patchwork ` (5 subsequent siblings) 7 siblings, 1 reply; 12+ messages in thread From: Arkadiusz Hiler @ 2020-06-16 14:14 UTC (permalink / raw) To: igt-dev; +Cc: Petri Latvala Handling magic control blocks and longjmp() out of them in threads is hard. The test should state the requirements before it starts spinning threads. Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> --- lib/igt_core.c | 3 +++ lib/tests/igt_thread.c | 34 +++++++++++++++++++++++++++++++++- 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/lib/igt_core.c b/lib/igt_core.c index ccf06cf4..cedd8168 100644 --- a/lib/igt_core.c +++ b/lib/igt_core.c @@ -1475,6 +1475,9 @@ void __igt_skip_check(const char *file, const int line, int err = errno; char *err_str = NULL; + if (!igt_thread_is_main()) + assert(!"igt_require/skip allowed only in the main thread!"); + if (err) igt_assert_neq(asprintf(&err_str, "Last errno: %i, %s\n", err, strerror(err)), -1); diff --git a/lib/tests/igt_thread.c b/lib/tests/igt_thread.c index 1a734e6d..3fb90416 100644 --- a/lib/tests/igt_thread.c +++ b/lib/tests/igt_thread.c @@ -43,6 +43,12 @@ static void *failure_thread(void *data) return NULL; } +static void *require_thread(void *data) +{ + igt_require(false); + return NULL; +} + static void one_subtest_fail(void) { igt_subtest_init(fake_argc, fake_argv); @@ -103,10 +109,21 @@ static void simple_failure(void) { igt_exit(); } +static void require_non_main_thread(void) { + pthread_t thread; + + igt_simple_init(fake_argc, fake_argv); + + pthread_create(&thread, 0, require_thread, NULL); + pthread_join(thread, NULL); + + igt_exit(); +} + int main(int argc, char **argv) { int status; - int outfd; + int outfd, errfd; pid_t pid; /* failing should be limited just to a single subtest */ { @@ -190,5 +207,20 @@ int main(int argc, char **argv) close(outfd); } + /* require in a thread should SIGABRT */ { + static char err[4096]; + + pid = do_fork_bg_with_pipes(require_non_main_thread, NULL, &errfd); + + read_whole_pipe(errfd, err, sizeof(err)); + + internal_assert(safe_wait(pid, &status) != -1); + internal_assert_wsignaled(status, SIGABRT); + + internal_assert(strstr(err, "allowed only in the main thread")); + + close(errfd); + } + return 0; } -- 2.25.4 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 3/3] igt/core: Disallow igt_require/skip in non-main threads 2020-06-16 14:14 ` [igt-dev] [PATCH i-g-t 3/3] igt/core: Disallow igt_require/skip in non-main threads Arkadiusz Hiler @ 2020-06-18 12:59 ` Petri Latvala 0 siblings, 0 replies; 12+ messages in thread From: Petri Latvala @ 2020-06-18 12:59 UTC (permalink / raw) To: Arkadiusz Hiler; +Cc: igt-dev On Tue, Jun 16, 2020 at 05:14:50PM +0300, Arkadiusz Hiler wrote: > Handling magic control blocks and longjmp() out of them in threads is > hard. > > The test should state the requirements before it starts spinning > threads. > > Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com> > --- > lib/igt_core.c | 3 +++ > lib/tests/igt_thread.c | 34 +++++++++++++++++++++++++++++++++- > 2 files changed, 36 insertions(+), 1 deletion(-) > > diff --git a/lib/igt_core.c b/lib/igt_core.c > index ccf06cf4..cedd8168 100644 > --- a/lib/igt_core.c > +++ b/lib/igt_core.c > @@ -1475,6 +1475,9 @@ void __igt_skip_check(const char *file, const int line, > int err = errno; > char *err_str = NULL; > > + if (!igt_thread_is_main()) > + assert(!"igt_require/skip allowed only in the main thread!"); > + > if (err) > igt_assert_neq(asprintf(&err_str, "Last errno: %i, %s\n", err, strerror(err)), > -1); > diff --git a/lib/tests/igt_thread.c b/lib/tests/igt_thread.c > index 1a734e6d..3fb90416 100644 > --- a/lib/tests/igt_thread.c > +++ b/lib/tests/igt_thread.c > @@ -43,6 +43,12 @@ static void *failure_thread(void *data) > return NULL; > } > > +static void *require_thread(void *data) > +{ > + igt_require(false); > + return NULL; > +} > + > static void one_subtest_fail(void) { > igt_subtest_init(fake_argc, fake_argv); > > @@ -103,10 +109,21 @@ static void simple_failure(void) { > igt_exit(); > } > > +static void require_non_main_thread(void) { > + pthread_t thread; > + > + igt_simple_init(fake_argc, fake_argv); > + > + pthread_create(&thread, 0, require_thread, NULL); > + pthread_join(thread, NULL); > + > + igt_exit(); > +} > + > int main(int argc, char **argv) > { > int status; > - int outfd; > + int outfd, errfd; > pid_t pid; > > /* failing should be limited just to a single subtest */ { > @@ -190,5 +207,20 @@ int main(int argc, char **argv) > close(outfd); > } > > + /* require in a thread should SIGABRT */ { > + static char err[4096]; > + > + pid = do_fork_bg_with_pipes(require_non_main_thread, NULL, &errfd); > + > + read_whole_pipe(errfd, err, sizeof(err)); > + > + internal_assert(safe_wait(pid, &status) != -1); > + internal_assert_wsignaled(status, SIGABRT); > + > + internal_assert(strstr(err, "allowed only in the main thread")); > + > + close(errfd); > + } > + > return 0; > } > -- > 2.25.4 > _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
* [igt-dev] ✗ GitLab.Pipeline: warning for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads 2020-06-16 14:14 [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Arkadiusz Hiler 2020-06-16 14:14 ` [igt-dev] [PATCH i-g-t 2/3] lib/core: Handle asserts in threads Arkadiusz Hiler 2020-06-16 14:14 ` [igt-dev] [PATCH i-g-t 3/3] igt/core: Disallow igt_require/skip in non-main threads Arkadiusz Hiler @ 2020-06-16 16:55 ` Patchwork 2020-06-16 17:06 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork ` (4 subsequent siblings) 7 siblings, 0 replies; 12+ messages in thread From: Patchwork @ 2020-06-16 16:55 UTC (permalink / raw) To: Arkadiusz Hiler; +Cc: igt-dev == Series Details == Series: series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads URL : https://patchwork.freedesktop.org/series/78422/ State : warning == Summary == Did not get list of undocumented tests for this run, something is wrong! Other than that, pipeline status: FAILED. see https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/pipelines/161686 for the overview. build:tests-fedora-oldest-meson has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/3128974): Using docker image sha256:4b3054d89ef79f9be95501786fbbbe22857d02c867fff99693808cd80909939f for registry.freedesktop.org/gfx-ci/igt-ci-tags/build-fedora:commit-5c97718a96489b6d763862eefd06a5df51bbad4e ... section_end:1592325967:prepare_executor section_start:1592325967:prepare_script Preparing environment Running on runner-j4Lrg1oF-project-3185-concurrent-0 via gst-htz-1... section_end:1592325969:prepare_script section_start:1592325969:get_sources Getting source from Git repository Fetching changes... Initialized empty Git repository in /builds/gfx-ci/igt-ci-tags/.git/ Created fresh repository. warning: redirecting to https://gitlab-ci-hetzner.freedesktop.org/gfx-ci/igt-ci-tags.git/ error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1) fatal: the remote end hung up unexpectedly section_end:1592326031:get_sources section_start:1592326031:upload_artifacts_on_failure Uploading artifacts for failed job section_end:1592326033:upload_artifacts_on_failure ERROR: Job failed: exit code 1 == Logs == For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/pipelines/161686 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads 2020-06-16 14:14 [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Arkadiusz Hiler ` (2 preceding siblings ...) 2020-06-16 16:55 ` [igt-dev] ✗ GitLab.Pipeline: warning for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for " Patchwork @ 2020-06-16 17:06 ` Patchwork 2020-06-16 18:25 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork ` (3 subsequent siblings) 7 siblings, 0 replies; 12+ messages in thread From: Patchwork @ 2020-06-16 17:06 UTC (permalink / raw) To: Arkadiusz Hiler; +Cc: igt-dev == Series Details == Series: series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads URL : https://patchwork.freedesktop.org/series/78422/ State : success == Summary == CI Bug Log - changes from CI_DRM_8634 -> IGTPW_4677 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/index.html Known issues ------------ Here are the changes found in IGTPW_4677 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@kms_cursor_legacy@basic-flip-after-cursor-atomic: - fi-icl-u2: [PASS][1] -> [DMESG-WARN][2] ([i915#1982]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/fi-icl-u2/igt@kms_cursor_legacy@basic-flip-after-cursor-atomic.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/fi-icl-u2/igt@kms_cursor_legacy@basic-flip-after-cursor-atomic.html * igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence: - fi-tgl-u2: [PASS][3] -> [DMESG-WARN][4] ([i915#402]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/fi-tgl-u2/igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/fi-tgl-u2/igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence.html #### Possible fixes #### * igt@i915_module_load@reload: - fi-tgl-u2: [DMESG-WARN][5] ([i915#402]) -> [PASS][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/fi-tgl-u2/igt@i915_module_load@reload.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/fi-tgl-u2/igt@i915_module_load@reload.html * igt@i915_pm_rpm@basic-pci-d3-state: - fi-byt-j1900: [DMESG-WARN][7] ([i915#1982]) -> [PASS][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/fi-byt-j1900/igt@i915_pm_rpm@basic-pci-d3-state.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/fi-byt-j1900/igt@i915_pm_rpm@basic-pci-d3-state.html #### Warnings #### * igt@gem_exec_suspend@basic-s0: - fi-kbl-x1275: [DMESG-WARN][9] ([i915#62] / [i915#92] / [i915#95]) -> [DMESG-WARN][10] ([i915#62] / [i915#92]) +4 similar issues [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/fi-kbl-x1275/igt@gem_exec_suspend@basic-s0.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/fi-kbl-x1275/igt@gem_exec_suspend@basic-s0.html * igt@gem_exec_suspend@basic-s3: - fi-kbl-x1275: [DMESG-WARN][11] ([i915#62] / [i915#92] / [i915#95]) -> [DMESG-WARN][12] ([i915#1982] / [i915#62] / [i915#92]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/fi-kbl-x1275/igt@gem_exec_suspend@basic-s3.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/fi-kbl-x1275/igt@gem_exec_suspend@basic-s3.html * igt@prime_vgem@basic-fence-flip: - fi-kbl-x1275: [DMESG-WARN][13] ([i915#62] / [i915#92]) -> [DMESG-WARN][14] ([i915#62] / [i915#92] / [i915#95]) +3 similar issues [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/fi-kbl-x1275/igt@prime_vgem@basic-fence-flip.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/fi-kbl-x1275/igt@prime_vgem@basic-fence-flip.html [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402 [i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62 [i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92 [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 Participating hosts (48 -> 42) ------------------------------ Missing (6): fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-tgl-y fi-byt-clapper fi-bdw-samus Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_5711 -> IGTPW_4677 CI-20190529: 20190529 CI_DRM_8634: 72c556b3627adef8cef3b7a47c32987b96e7f1c2 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_4677: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/index.html IGT_5711: 90611a0c90afa4a46496c78a4faf9638a1538ac3 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/index.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads 2020-06-16 14:14 [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Arkadiusz Hiler ` (3 preceding siblings ...) 2020-06-16 17:06 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork @ 2020-06-16 18:25 ` Patchwork 2020-06-17 13:52 ` Arkadiusz Hiler 2020-06-17 14:37 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads (rev2) Patchwork ` (2 subsequent siblings) 7 siblings, 1 reply; 12+ messages in thread From: Patchwork @ 2020-06-16 18:25 UTC (permalink / raw) To: Arkadiusz Hiler; +Cc: igt-dev == Series Details == Series: series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads URL : https://patchwork.freedesktop.org/series/78422/ State : failure == Summary == CI Bug Log - changes from CI_DRM_8634_full -> IGTPW_4677_full ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with IGTPW_4677_full absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_4677_full, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/index.html Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_4677_full: ### IGT changes ### #### Possible regressions #### * igt@gem_eio@kms: - shard-hsw: [PASS][1] -> [FAIL][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-hsw2/igt@gem_eio@kms.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-hsw6/igt@gem_eio@kms.html * igt@gem_exec_balancer@bonded-early: - shard-tglb: [PASS][3] -> [FAIL][4] [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb7/igt@gem_exec_balancer@bonded-early.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb1/igt@gem_exec_balancer@bonded-early.html * igt@gem_mmap_offset@clear: - shard-iclb: [PASS][5] -> [DMESG-WARN][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb6/igt@gem_mmap_offset@clear.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb1/igt@gem_mmap_offset@clear.html * igt@i915_pm_rpm@system-suspend-devices: - shard-iclb: [PASS][7] -> [FAIL][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb3/igt@i915_pm_rpm@system-suspend-devices.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb6/igt@i915_pm_rpm@system-suspend-devices.html * igt@perf@i915-ref-count: - shard-hsw: [PASS][9] -> [INCOMPLETE][10] +1 similar issue [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-hsw5/igt@perf@i915-ref-count.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-hsw1/igt@perf@i915-ref-count.html Known issues ------------ Here are the changes found in IGTPW_4677_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_ctx_isolation@preservation-s3@rcs0: - shard-kbl: [PASS][11] -> [INCOMPLETE][12] ([i915#794]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl2/igt@gem_ctx_isolation@preservation-s3@rcs0.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl4/igt@gem_ctx_isolation@preservation-s3@rcs0.html - shard-iclb: [PASS][13] -> [FAIL][14] ([fdo#103375]) +3 similar issues [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb5/igt@gem_ctx_isolation@preservation-s3@rcs0.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb6/igt@gem_ctx_isolation@preservation-s3@rcs0.html * igt@gem_exec_reloc@basic-concurrent0: - shard-glk: [PASS][15] -> [FAIL][16] ([i915#1930]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-glk2/igt@gem_exec_reloc@basic-concurrent0.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-glk5/igt@gem_exec_reloc@basic-concurrent0.html * igt@i915_module_load@reload: - shard-tglb: [PASS][17] -> [DMESG-WARN][18] ([i915#402]) +6 similar issues [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb6/igt@i915_module_load@reload.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb2/igt@i915_module_load@reload.html * igt@i915_pm_dc@dc3co-vpb-simulation: - shard-tglb: [PASS][19] -> [SKIP][20] ([i915#1904]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb2/igt@i915_pm_dc@dc3co-vpb-simulation.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb8/igt@i915_pm_dc@dc3co-vpb-simulation.html * igt@i915_pm_dc@dc5-psr: - shard-iclb: [PASS][21] -> [FAIL][22] ([i915#1899]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb6/igt@i915_pm_dc@dc5-psr.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb7/igt@i915_pm_dc@dc5-psr.html - shard-tglb: [PASS][23] -> [FAIL][24] ([i915#1899]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb3/igt@i915_pm_dc@dc5-psr.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb6/igt@i915_pm_dc@dc5-psr.html * igt@i915_pm_rc6_residency@rc6-idle: - shard-tglb: [PASS][25] -> [FAIL][26] ([i915#1568]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb3/igt@i915_pm_rc6_residency@rc6-idle.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb5/igt@i915_pm_rc6_residency@rc6-idle.html * igt@kms_big_fb@linear-64bpp-rotate-180: - shard-glk: [PASS][27] -> [DMESG-FAIL][28] ([i915#118] / [i915#95]) [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-glk9/igt@kms_big_fb@linear-64bpp-rotate-180.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-glk8/igt@kms_big_fb@linear-64bpp-rotate-180.html * igt@kms_big_fb@linear-8bpp-rotate-180: - shard-apl: [PASS][29] -> [DMESG-WARN][30] ([i915#1982]) [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl6/igt@kms_big_fb@linear-8bpp-rotate-180.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl4/igt@kms_big_fb@linear-8bpp-rotate-180.html * igt@kms_color@pipe-b-ctm-max: - shard-apl: [PASS][31] -> [DMESG-WARN][32] ([i915#95]) +42 similar issues [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl4/igt@kms_color@pipe-b-ctm-max.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl1/igt@kms_color@pipe-b-ctm-max.html * igt@kms_cursor_crc@pipe-d-cursor-suspend: - shard-tglb: [PASS][33] -> [INCOMPLETE][34] ([i915#1602]) [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb8/igt@kms_cursor_crc@pipe-d-cursor-suspend.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb2/igt@kms_cursor_crc@pipe-d-cursor-suspend.html * igt@kms_flip@flip-vs-suspend@c-dp1: - shard-kbl: [PASS][35] -> [DMESG-WARN][36] ([i915#180]) +5 similar issues [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl1/igt@kms_flip@flip-vs-suspend@c-dp1.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl1/igt@kms_flip@flip-vs-suspend@c-dp1.html * igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu: - shard-iclb: [PASS][37] -> [DMESG-WARN][38] ([i915#1982]) [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb3/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu.html * igt@kms_plane_cursor@pipe-a-viewport-size-64: - shard-kbl: [PASS][39] -> [DMESG-FAIL][40] ([i915#95]) +1 similar issue [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl6/igt@kms_plane_cursor@pipe-a-viewport-size-64.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl6/igt@kms_plane_cursor@pipe-a-viewport-size-64.html - shard-apl: [PASS][41] -> [DMESG-FAIL][42] ([i915#95]) [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl3/igt@kms_plane_cursor@pipe-a-viewport-size-64.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl8/igt@kms_plane_cursor@pipe-a-viewport-size-64.html * igt@kms_psr2_su@frontbuffer: - shard-iclb: [PASS][43] -> [SKIP][44] ([fdo#109642] / [fdo#111068]) +1 similar issue [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb2/igt@kms_psr2_su@frontbuffer.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb6/igt@kms_psr2_su@frontbuffer.html * igt@kms_setmode@basic: - shard-kbl: [PASS][45] -> [FAIL][46] ([i915#31]) [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl3/igt@kms_setmode@basic.html [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl1/igt@kms_setmode@basic.html * igt@perf@blocking-parameterized: - shard-iclb: [PASS][47] -> [FAIL][48] ([i915#1542]) [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb2/igt@perf@blocking-parameterized.html [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb1/igt@perf@blocking-parameterized.html * igt@syncobj_basic@bad-flags-fd-to-handle: - shard-kbl: [PASS][49] -> [DMESG-WARN][50] ([i915#93] / [i915#95]) +50 similar issues [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl2/igt@syncobj_basic@bad-flags-fd-to-handle.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl7/igt@syncobj_basic@bad-flags-fd-to-handle.html #### Possible fixes #### * igt@gem_exec_schedule@implicit-write-read@rcs0: - shard-snb: [INCOMPLETE][51] ([i915#82]) -> [PASS][52] +2 similar issues [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-snb1/igt@gem_exec_schedule@implicit-write-read@rcs0.html [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-snb1/igt@gem_exec_schedule@implicit-write-read@rcs0.html * igt@gem_tiled_blits@basic: - shard-snb: [TIMEOUT][53] ([i915#1958]) -> [PASS][54] +1 similar issue [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-snb4/igt@gem_tiled_blits@basic.html [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-snb1/igt@gem_tiled_blits@basic.html * igt@i915_pm_rpm@system-suspend-modeset: - shard-hsw: [SKIP][55] ([fdo#109271]) -> [PASS][56] +1 similar issue [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-hsw7/igt@i915_pm_rpm@system-suspend-modeset.html [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-hsw6/igt@i915_pm_rpm@system-suspend-modeset.html * igt@i915_query@query-topology-kernel-writes: - shard-iclb: [DMESG-WARN][57] ([i915#1982]) -> [PASS][58] [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb7/igt@i915_query@query-topology-kernel-writes.html [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb3/igt@i915_query@query-topology-kernel-writes.html * igt@i915_suspend@fence-restore-untiled: - shard-kbl: [INCOMPLETE][59] ([i915#155]) -> [PASS][60] [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl1/igt@i915_suspend@fence-restore-untiled.html [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl3/igt@i915_suspend@fence-restore-untiled.html * igt@kms_big_fb@linear-32bpp-rotate-180: - shard-apl: [DMESG-FAIL][61] ([i915#95]) -> [PASS][62] +2 similar issues [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl3/igt@kms_big_fb@linear-32bpp-rotate-180.html [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl4/igt@kms_big_fb@linear-32bpp-rotate-180.html * igt@kms_big_fb@y-tiled-64bpp-rotate-0: - shard-glk: [DMESG-FAIL][63] ([i915#118] / [i915#95]) -> [PASS][64] [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-glk8/igt@kms_big_fb@y-tiled-64bpp-rotate-0.html [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-glk7/igt@kms_big_fb@y-tiled-64bpp-rotate-0.html * igt@kms_cursor_crc@pipe-a-cursor-128x128-sliding: - shard-apl: [DMESG-WARN][65] ([i915#95]) -> [PASS][66] +45 similar issues [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl7/igt@kms_cursor_crc@pipe-a-cursor-128x128-sliding.html [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl3/igt@kms_cursor_crc@pipe-a-cursor-128x128-sliding.html * igt@kms_cursor_crc@pipe-a-cursor-64x21-random: - shard-kbl: [DMESG-FAIL][67] ([i915#54] / [i915#95]) -> [PASS][68] +3 similar issues [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl1/igt@kms_cursor_crc@pipe-a-cursor-64x21-random.html [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl4/igt@kms_cursor_crc@pipe-a-cursor-64x21-random.html * igt@kms_cursor_crc@pipe-a-cursor-64x21-sliding: - shard-apl: [FAIL][69] ([i915#54]) -> [PASS][70] [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl7/igt@kms_cursor_crc@pipe-a-cursor-64x21-sliding.html [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl6/igt@kms_cursor_crc@pipe-a-cursor-64x21-sliding.html - shard-kbl: [FAIL][71] ([i915#54]) -> [PASS][72] [71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl2/igt@kms_cursor_crc@pipe-a-cursor-64x21-sliding.html [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl1/igt@kms_cursor_crc@pipe-a-cursor-64x21-sliding.html - shard-glk: [FAIL][73] ([i915#54]) -> [PASS][74] [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-glk7/igt@kms_cursor_crc@pipe-a-cursor-64x21-sliding.html [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-glk5/igt@kms_cursor_crc@pipe-a-cursor-64x21-sliding.html * igt@kms_draw_crc@draw-method-xrgb2101010-pwrite-ytiled: - shard-kbl: [DMESG-WARN][75] ([i915#93] / [i915#95]) -> [PASS][76] +55 similar issues [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl3/igt@kms_draw_crc@draw-method-xrgb2101010-pwrite-ytiled.html [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl1/igt@kms_draw_crc@draw-method-xrgb2101010-pwrite-ytiled.html * igt@kms_fbcon_fbt@fbc: - shard-kbl: [DMESG-FAIL][77] ([i915#95]) -> [PASS][78] +2 similar issues [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl7/igt@kms_fbcon_fbt@fbc.html [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl4/igt@kms_fbcon_fbt@fbc.html - shard-apl: [FAIL][79] ([i915#1525]) -> [PASS][80] [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl3/igt@kms_fbcon_fbt@fbc.html [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl7/igt@kms_fbcon_fbt@fbc.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-blt: - shard-tglb: [DMESG-WARN][81] ([i915#1982]) -> [PASS][82] [81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-blt.html [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-blt.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-render: - shard-tglb: [DMESG-WARN][83] ([i915#1982] / [i915#402]) -> [PASS][84] [83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb8/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-render.html [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb7/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-render.html * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes: - shard-kbl: [DMESG-WARN][85] ([i915#180]) -> [PASS][86] +1 similar issue [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html * igt@kms_psr@psr2_sprite_render: - shard-iclb: [SKIP][87] ([fdo#109441]) -> [PASS][88] +1 similar issue [87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb8/igt@kms_psr@psr2_sprite_render.html [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb2/igt@kms_psr@psr2_sprite_render.html * igt@kms_vblank@pipe-b-wait-busy-hang: - shard-apl: [DMESG-WARN][89] ([i915#1982]) -> [PASS][90] [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl3/igt@kms_vblank@pipe-b-wait-busy-hang.html [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl2/igt@kms_vblank@pipe-b-wait-busy-hang.html * igt@kms_vblank@pipe-c-query-forked-busy: - shard-hsw: [TIMEOUT][91] ([i915#1958]) -> [PASS][92] +3 similar issues [91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-hsw7/igt@kms_vblank@pipe-c-query-forked-busy.html [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-hsw6/igt@kms_vblank@pipe-c-query-forked-busy.html * igt@perf@invalid-open-flags: - shard-tglb: [SKIP][93] ([i915#405]) -> [PASS][94] [93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb6/igt@perf@invalid-open-flags.html [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb7/igt@perf@invalid-open-flags.html - shard-apl: [SKIP][95] ([fdo#109271]) -> [PASS][96] [95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl4/igt@perf@invalid-open-flags.html [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl4/igt@perf@invalid-open-flags.html - shard-iclb: [SKIP][97] ([i915#405]) -> [PASS][98] [97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb7/igt@perf@invalid-open-flags.html [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb7/igt@perf@invalid-open-flags.html - shard-glk: [SKIP][99] ([fdo#109271]) -> [PASS][100] [99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-glk8/igt@perf@invalid-open-flags.html [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-glk1/igt@perf@invalid-open-flags.html - shard-kbl: [SKIP][101] ([fdo#109271]) -> [PASS][102] [101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl2/igt@perf@invalid-open-flags.html [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl7/igt@perf@invalid-open-flags.html #### Warnings #### * igt@gen7_exec_parse@chained-batch: - shard-snb: [TIMEOUT][103] ([i915#1958]) -> [SKIP][104] ([fdo#109271]) +2 similar issues [103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-snb4/igt@gen7_exec_parse@chained-batch.html [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-snb5/igt@gen7_exec_parse@chained-batch.html * igt@i915_pm_dc@dc6-dpms: - shard-tglb: [FAIL][105] ([i915#454]) -> [SKIP][106] ([i915#468]) [105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb5/igt@i915_pm_dc@dc6-dpms.html [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb2/igt@i915_pm_dc@dc6-dpms.html * igt@i915_pm_dc@dc6-psr: - shard-hsw: [TIMEOUT][107] ([i915#1958]) -> [SKIP][108] ([fdo#109271]) [107]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-hsw7/igt@i915_pm_dc@dc6-psr.html [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-hsw1/igt@i915_pm_dc@dc6-psr.html * igt@kms_color_chamelium@pipe-b-ctm-max: - shard-snb: [TIMEOUT][109] ([i915#1958]) -> [SKIP][110] ([fdo#109271] / [fdo#111827]) [109]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-snb4/igt@kms_color_chamelium@pipe-b-ctm-max.html [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-snb1/igt@kms_color_chamelium@pipe-b-ctm-max.html - shard-hsw: [TIMEOUT][111] ([i915#1958]) -> [SKIP][112] ([fdo#109271] / [fdo#111827]) [111]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-hsw7/igt@kms_color_chamelium@pipe-b-ctm-max.html [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-hsw6/igt@kms_color_chamelium@pipe-b-ctm-max.html * igt@kms_content_protection@lic: - shard-kbl: [TIMEOUT][113] ([i915#1319]) -> [TIMEOUT][114] ([i915#1319] / [i915#1958]) [113]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl1/igt@kms_content_protection@lic.html [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl3/igt@kms_content_protection@lic.html * igt@kms_fbcon_fbt@fbc-suspend: - shard-kbl: [DMESG-FAIL][115] ([i915#95]) -> [FAIL][116] ([i915#64]) [115]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl4/igt@kms_fbcon_fbt@fbc-suspend.html [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl2/igt@kms_fbcon_fbt@fbc-suspend.html * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a: - shard-kbl: [DMESG-FAIL][117] ([i915#95]) -> [DMESG-WARN][118] ([i915#180]) [117]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl4/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl4/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html * igt@kms_plane_alpha_blend@pipe-b-alpha-basic: - shard-apl: [FAIL][119] ([fdo#108145] / [i915#265]) -> [DMESG-FAIL][120] ([fdo#108145] / [i915#95]) +1 similar issue [119]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl7/igt@kms_plane_alpha_blend@pipe-b-alpha-basic.html [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl6/igt@kms_plane_alpha_blend@pipe-b-alpha-basic.html - shard-kbl: [FAIL][121] ([fdo#108145] / [i915#265]) -> [DMESG-FAIL][122] ([fdo#108145] / [i915#95]) +1 similar issue [121]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl1/igt@kms_plane_alpha_blend@pipe-b-alpha-basic.html [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl1/igt@kms_plane_alpha_blend@pipe-b-alpha-basic.html * igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb: - shard-apl: [DMESG-FAIL][123] ([i915#95]) -> [FAIL][124] ([i915#265]) [123]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl3/igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb.html [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl7/igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375 [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642 [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068 [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827 [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118 [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319 [i915#1525]: https://gitlab.freedesktop.org/drm/intel/issues/1525 [i915#1542]: https://gitlab.freedesktop.org/drm/intel/issues/1542 [i915#155]: https://gitlab.freedesktop.org/drm/intel/issues/155 [i915#1568]: https://gitlab.freedesktop.org/drm/intel/issues/1568 [i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602 [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 [i915#1899]: https://gitlab.freedesktop.org/drm/intel/issues/1899 [i915#1904]: https://gitlab.freedesktop.org/drm/intel/issues/1904 [i915#1930]: https://gitlab.freedesktop.org/drm/intel/issues/1930 [i915#1958]: https://gitlab.freedesktop.org/drm/intel/issues/1958 [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#2036]: https://gitlab.freedesktop.org/drm/intel/issues/2036 [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265 [i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31 [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402 [i915#405]: https://gitlab.freedesktop.org/drm/intel/issues/405 [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 [i915#468]: https://gitlab.freedesktop.org/drm/intel/issues/468 [i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54 [i915#64]: https://gitlab.freedesktop.org/drm/intel/issues/64 [i915#794]: https://gitlab.freedesktop.org/drm/intel/issues/794 [i915#82]: https://gitlab.freedesktop.org/drm/intel/issues/82 [i915#93]: https://gitlab.freedesktop.org/drm/intel/issues/93 [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 Participating hosts (11 -> 8) ------------------------------ Missing (3): pig-skl-6260u pig-glk-j5005 pig-icl-1065g7 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_5711 -> IGTPW_4677 * Piglit: piglit_4509 -> None CI-20190529: 20190529 CI_DRM_8634: 72c556b3627adef8cef3b7a47c32987b96e7f1c2 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_4677: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/index.html IGT_5711: 90611a0c90afa4a46496c78a4faf9638a1538ac3 @ 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_4677/index.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads 2020-06-16 18:25 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork @ 2020-06-17 13:52 ` Arkadiusz Hiler 0 siblings, 0 replies; 12+ messages in thread From: Arkadiusz Hiler @ 2020-06-17 13:52 UTC (permalink / raw) To: igt-dev On Tue, Jun 16, 2020 at 06:25:44PM +0000, Patchwork wrote: > == Series Details == > > Series: series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads > URL : https://patchwork.freedesktop.org/series/78422/ > State : failure > > == Summary == > > CI Bug Log - changes from CI_DRM_8634_full -> IGTPW_4677_full > ==================================================== > > Summary > ------- > > **FAILURE** > > Serious unknown changes coming with IGTPW_4677_full absolutely need to be > verified manually. > > If you think the reported changes have nothing to do with the changes > introduced in IGTPW_4677_full, please notify your bug team to allow them > to document this new failure mode, which will reduce false positives in CI. > > External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/index.html > > Possible new issues > ------------------- > > Here are the unknown changes that may have been introduced in IGTPW_4677_full: > > ### IGT changes ### > > #### Possible regressions #### > > * igt@gem_eio@kms: > - shard-hsw: [PASS][1] -> [FAIL][2] > [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-hsw2/igt@gem_eio@kms.html > [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-hsw6/igt@gem_eio@kms.html > > * igt@gem_exec_balancer@bonded-early: > - shard-tglb: [PASS][3] -> [FAIL][4] > [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb7/igt@gem_exec_balancer@bonded-early.html > [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb1/igt@gem_exec_balancer@bonded-early.html > > * igt@gem_mmap_offset@clear: > - shard-iclb: [PASS][5] -> [DMESG-WARN][6] > [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb6/igt@gem_mmap_offset@clear.html > [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb1/igt@gem_mmap_offset@clear.html > > * igt@i915_pm_rpm@system-suspend-devices: > - shard-iclb: [PASS][7] -> [FAIL][8] > [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb3/igt@i915_pm_rpm@system-suspend-devices.html > [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb6/igt@i915_pm_rpm@system-suspend-devices.html > > * igt@perf@i915-ref-count: > - shard-hsw: [PASS][9] -> [INCOMPLETE][10] +1 similar issue > [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-hsw5/igt@perf@i915-ref-count.html > [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-hsw1/igt@perf@i915-ref-count.html > > > Known issues > ------------ > > Here are the changes found in IGTPW_4677_full that come from known issues: > > ### IGT changes ### > > #### Issues hit #### > > * igt@gem_ctx_isolation@preservation-s3@rcs0: > - shard-kbl: [PASS][11] -> [INCOMPLETE][12] ([i915#794]) > [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl2/igt@gem_ctx_isolation@preservation-s3@rcs0.html > [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl4/igt@gem_ctx_isolation@preservation-s3@rcs0.html > - shard-iclb: [PASS][13] -> [FAIL][14] ([fdo#103375]) +3 similar issues > [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb5/igt@gem_ctx_isolation@preservation-s3@rcs0.html > [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb6/igt@gem_ctx_isolation@preservation-s3@rcs0.html > > * igt@gem_exec_reloc@basic-concurrent0: > - shard-glk: [PASS][15] -> [FAIL][16] ([i915#1930]) > [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-glk2/igt@gem_exec_reloc@basic-concurrent0.html > [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-glk5/igt@gem_exec_reloc@basic-concurrent0.html > > * igt@i915_module_load@reload: > - shard-tglb: [PASS][17] -> [DMESG-WARN][18] ([i915#402]) +6 similar issues > [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb6/igt@i915_module_load@reload.html > [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb2/igt@i915_module_load@reload.html > > * igt@i915_pm_dc@dc3co-vpb-simulation: > - shard-tglb: [PASS][19] -> [SKIP][20] ([i915#1904]) > [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb2/igt@i915_pm_dc@dc3co-vpb-simulation.html > [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb8/igt@i915_pm_dc@dc3co-vpb-simulation.html > > * igt@i915_pm_dc@dc5-psr: > - shard-iclb: [PASS][21] -> [FAIL][22] ([i915#1899]) > [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb6/igt@i915_pm_dc@dc5-psr.html > [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb7/igt@i915_pm_dc@dc5-psr.html > - shard-tglb: [PASS][23] -> [FAIL][24] ([i915#1899]) > [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb3/igt@i915_pm_dc@dc5-psr.html > [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb6/igt@i915_pm_dc@dc5-psr.html > > * igt@i915_pm_rc6_residency@rc6-idle: > - shard-tglb: [PASS][25] -> [FAIL][26] ([i915#1568]) > [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb3/igt@i915_pm_rc6_residency@rc6-idle.html > [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb5/igt@i915_pm_rc6_residency@rc6-idle.html > > * igt@kms_big_fb@linear-64bpp-rotate-180: > - shard-glk: [PASS][27] -> [DMESG-FAIL][28] ([i915#118] / [i915#95]) > [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-glk9/igt@kms_big_fb@linear-64bpp-rotate-180.html > [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-glk8/igt@kms_big_fb@linear-64bpp-rotate-180.html > > * igt@kms_big_fb@linear-8bpp-rotate-180: > - shard-apl: [PASS][29] -> [DMESG-WARN][30] ([i915#1982]) > [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl6/igt@kms_big_fb@linear-8bpp-rotate-180.html > [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl4/igt@kms_big_fb@linear-8bpp-rotate-180.html > > * igt@kms_color@pipe-b-ctm-max: > - shard-apl: [PASS][31] -> [DMESG-WARN][32] ([i915#95]) +42 similar issues > [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl4/igt@kms_color@pipe-b-ctm-max.html > [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl1/igt@kms_color@pipe-b-ctm-max.html > > * igt@kms_cursor_crc@pipe-d-cursor-suspend: > - shard-tglb: [PASS][33] -> [INCOMPLETE][34] ([i915#1602]) > [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-tglb8/igt@kms_cursor_crc@pipe-d-cursor-suspend.html > [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-tglb2/igt@kms_cursor_crc@pipe-d-cursor-suspend.html > > * igt@kms_flip@flip-vs-suspend@c-dp1: > - shard-kbl: [PASS][35] -> [DMESG-WARN][36] ([i915#180]) +5 similar issues > [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl1/igt@kms_flip@flip-vs-suspend@c-dp1.html > [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl1/igt@kms_flip@flip-vs-suspend@c-dp1.html > > * igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu: > - shard-iclb: [PASS][37] -> [DMESG-WARN][38] ([i915#1982]) > [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu.html > [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb3/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu.html > > * igt@kms_plane_cursor@pipe-a-viewport-size-64: > - shard-kbl: [PASS][39] -> [DMESG-FAIL][40] ([i915#95]) +1 similar issue > [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl6/igt@kms_plane_cursor@pipe-a-viewport-size-64.html > [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl6/igt@kms_plane_cursor@pipe-a-viewport-size-64.html > - shard-apl: [PASS][41] -> [DMESG-FAIL][42] ([i915#95]) > [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-apl3/igt@kms_plane_cursor@pipe-a-viewport-size-64.html > [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-apl8/igt@kms_plane_cursor@pipe-a-viewport-size-64.html > > * igt@kms_psr2_su@frontbuffer: > - shard-iclb: [PASS][43] -> [SKIP][44] ([fdo#109642] / [fdo#111068]) +1 similar issue > [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb2/igt@kms_psr2_su@frontbuffer.html > [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb6/igt@kms_psr2_su@frontbuffer.html > > * igt@kms_setmode@basic: > - shard-kbl: [PASS][45] -> [FAIL][46] ([i915#31]) > [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl3/igt@kms_setmode@basic.html > [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl1/igt@kms_setmode@basic.html > > * igt@perf@blocking-parameterized: > - shard-iclb: [PASS][47] -> [FAIL][48] ([i915#1542]) > [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-iclb2/igt@perf@blocking-parameterized.html > [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-iclb1/igt@perf@blocking-parameterized.html > > * igt@syncobj_basic@bad-flags-fd-to-handle: > - shard-kbl: [PASS][49] -> [DMESG-WARN][50] ([i915#93] / [i915#95]) +50 similar issues > [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8634/shard-kbl2/igt@syncobj_basic@bad-flags-fd-to-handle.html > [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4677/shard-kbl7/igt@syncobj_basic@bad-flags-fd-to-handle.html None of those look like they have been caused by the changes in thread behavior, even after looking at the code. I'll spin a re-run just to be sure. -- Cheers, Arek _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads (rev2) 2020-06-16 14:14 [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Arkadiusz Hiler ` (4 preceding siblings ...) 2020-06-16 18:25 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork @ 2020-06-17 14:37 ` Patchwork 2020-06-17 16:44 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork 2020-06-18 12:51 ` [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Petri Latvala 7 siblings, 0 replies; 12+ messages in thread From: Patchwork @ 2020-06-17 14:37 UTC (permalink / raw) To: Arkadiusz Hiler; +Cc: igt-dev == Series Details == Series: series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads (rev2) URL : https://patchwork.freedesktop.org/series/78422/ State : success == Summary == CI Bug Log - changes from IGT_5712 -> IGTPW_4679 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/index.html Known issues ------------ Here are the changes found in IGTPW_4679 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_close_race@basic-threads: - fi-pnv-d510: [PASS][1] -> [INCOMPLETE][2] ([CI#80] / [i915#299]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/fi-pnv-d510/igt@gem_close_race@basic-threads.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/fi-pnv-d510/igt@gem_close_race@basic-threads.html * igt@gem_exec_suspend@basic-s0: - fi-tgl-u2: [PASS][3] -> [FAIL][4] ([i915#1888]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/fi-tgl-u2/igt@gem_exec_suspend@basic-s0.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/fi-tgl-u2/igt@gem_exec_suspend@basic-s0.html * igt@i915_pm_backlight@basic-brightness: - fi-whl-u: [PASS][5] -> [DMESG-WARN][6] ([i915#95]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/fi-whl-u/igt@i915_pm_backlight@basic-brightness.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/fi-whl-u/igt@i915_pm_backlight@basic-brightness.html * igt@i915_pm_rpm@module-reload: - fi-glk-dsi: [PASS][7] -> [DMESG-WARN][8] ([i915#1982]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/fi-glk-dsi/igt@i915_pm_rpm@module-reload.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/fi-glk-dsi/igt@i915_pm_rpm@module-reload.html * igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence: - fi-tgl-u2: [PASS][9] -> [DMESG-WARN][10] ([i915#402]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/fi-tgl-u2/igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/fi-tgl-u2/igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence.html #### Possible fixes #### * igt@i915_pm_rpm@basic-pci-d3-state: - fi-bsw-kefka: [DMESG-WARN][11] ([i915#1982]) -> [PASS][12] [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/fi-bsw-kefka/igt@i915_pm_rpm@basic-pci-d3-state.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/fi-bsw-kefka/igt@i915_pm_rpm@basic-pci-d3-state.html * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy: - fi-icl-guc: [DMESG-WARN][13] ([i915#1982]) -> [PASS][14] [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/fi-icl-guc/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/fi-icl-guc/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html #### Warnings #### * igt@kms_force_connector_basic@force-edid: - fi-kbl-x1275: [DMESG-WARN][15] ([i915#62] / [i915#92] / [i915#95]) -> [DMESG-WARN][16] ([i915#62] / [i915#92]) +3 similar issues [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/fi-kbl-x1275/igt@kms_force_connector_basic@force-edid.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/fi-kbl-x1275/igt@kms_force_connector_basic@force-edid.html * igt@prime_vgem@basic-fence-flip: - fi-kbl-x1275: [DMESG-WARN][17] ([i915#62] / [i915#92]) -> [DMESG-WARN][18] ([i915#62] / [i915#92] / [i915#95]) +2 similar issues [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/fi-kbl-x1275/igt@prime_vgem@basic-fence-flip.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/fi-kbl-x1275/igt@prime_vgem@basic-fence-flip.html [CI#80]: https://gitlab.freedesktop.org/gfx-ci/i915-infra/issues/80 [i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888 [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#299]: https://gitlab.freedesktop.org/drm/intel/issues/299 [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402 [i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62 [i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92 [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 Participating hosts (48 -> 42) ------------------------------ Missing (6): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-byt-clapper Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_5712 -> IGTPW_4679 CI-20190529: 20190529 CI_DRM_8639: 47584e59cf51ec499d68a4cefbaf447448ce2894 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_4679: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/index.html IGT_5712: eba1135ddd35f9d3097ed91032aefe8f9a9f9d02 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/index.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads (rev2) 2020-06-16 14:14 [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Arkadiusz Hiler ` (5 preceding siblings ...) 2020-06-17 14:37 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads (rev2) Patchwork @ 2020-06-17 16:44 ` Patchwork 2020-06-18 12:51 ` [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Petri Latvala 7 siblings, 0 replies; 12+ messages in thread From: Patchwork @ 2020-06-17 16:44 UTC (permalink / raw) To: Arkadiusz Hiler; +Cc: igt-dev == Series Details == Series: series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads (rev2) URL : https://patchwork.freedesktop.org/series/78422/ State : failure == Summary == CI Bug Log - changes from IGT_5712_full -> IGTPW_4679_full ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with IGTPW_4679_full absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_4679_full, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/index.html Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_4679_full: ### IGT changes ### #### Possible regressions #### * igt@gem_exec_balancer@bonded-early: - shard-kbl: [PASS][1] -> [FAIL][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl4/igt@gem_exec_balancer@bonded-early.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl4/igt@gem_exec_balancer@bonded-early.html Known issues ------------ Here are the changes found in IGTPW_4679_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_exec_gttfill@all: - shard-glk: [PASS][3] -> [DMESG-WARN][4] ([i915#118] / [i915#95]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-glk4/igt@gem_exec_gttfill@all.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-glk1/igt@gem_exec_gttfill@all.html * igt@gem_exec_schedule@implicit-boths@rcs0: - shard-snb: [PASS][5] -> [INCOMPLETE][6] ([i915#82]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-snb1/igt@gem_exec_schedule@implicit-boths@rcs0.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-snb6/igt@gem_exec_schedule@implicit-boths@rcs0.html * igt@gem_mmap_offset@basic-uaf: - shard-apl: [PASS][7] -> [DMESG-WARN][8] ([i915#95]) +41 similar issues [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl3/igt@gem_mmap_offset@basic-uaf.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl4/igt@gem_mmap_offset@basic-uaf.html * igt@gem_mmap_wc@copy: - shard-kbl: [PASS][9] -> [DMESG-WARN][10] ([i915#93] / [i915#95]) +47 similar issues [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl6/igt@gem_mmap_wc@copy.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl6/igt@gem_mmap_wc@copy.html * igt@gen9_exec_parse@allowed-all: - shard-glk: [PASS][11] -> [DMESG-WARN][12] ([i915#1436] / [i915#716]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-glk1/igt@gen9_exec_parse@allowed-all.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-glk6/igt@gen9_exec_parse@allowed-all.html - shard-kbl: [PASS][13] -> [DMESG-WARN][14] ([i915#1436] / [i915#716]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl3/igt@gen9_exec_parse@allowed-all.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl6/igt@gen9_exec_parse@allowed-all.html * igt@i915_pm_dc@dc5-psr: - shard-iclb: [PASS][15] -> [FAIL][16] ([i915#1899]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-iclb6/igt@i915_pm_dc@dc5-psr.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-iclb7/igt@i915_pm_dc@dc5-psr.html * igt@kms_big_fb@linear-32bpp-rotate-0: - shard-kbl: [PASS][17] -> [DMESG-WARN][18] ([i915#1982]) +1 similar issue [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl4/igt@kms_big_fb@linear-32bpp-rotate-0.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl6/igt@kms_big_fb@linear-32bpp-rotate-0.html * igt@kms_big_fb@x-tiled-64bpp-rotate-0: - shard-glk: [PASS][19] -> [DMESG-FAIL][20] ([i915#118] / [i915#95]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-glk7/igt@kms_big_fb@x-tiled-64bpp-rotate-0.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-glk8/igt@kms_big_fb@x-tiled-64bpp-rotate-0.html * igt@kms_cursor_crc@pipe-a-cursor-128x128-offscreen: - shard-kbl: [PASS][21] -> [DMESG-FAIL][22] ([i915#54] / [i915#95]) +4 similar issues [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl1/igt@kms_cursor_crc@pipe-a-cursor-128x128-offscreen.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl2/igt@kms_cursor_crc@pipe-a-cursor-128x128-offscreen.html * igt@kms_cursor_crc@pipe-a-cursor-dpms: - shard-kbl: [PASS][23] -> [FAIL][24] ([i915#54]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl4/igt@kms_cursor_crc@pipe-a-cursor-dpms.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl3/igt@kms_cursor_crc@pipe-a-cursor-dpms.html - shard-apl: [PASS][25] -> [FAIL][26] ([i915#54]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl1/igt@kms_cursor_crc@pipe-a-cursor-dpms.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl6/igt@kms_cursor_crc@pipe-a-cursor-dpms.html * igt@kms_cursor_legacy@2x-long-cursor-vs-flip-legacy: - shard-hsw: [PASS][27] -> [FAIL][28] ([i915#96]) [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-hsw4/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-legacy.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-hsw8/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-legacy.html * igt@kms_cursor_legacy@cursorb-vs-flipa-legacy: - shard-glk: [PASS][29] -> [INCOMPLETE][30] ([i915#58] / [k.org#198133]) [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-glk4/igt@kms_cursor_legacy@cursorb-vs-flipa-legacy.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-glk6/igt@kms_cursor_legacy@cursorb-vs-flipa-legacy.html * igt@kms_draw_crc@draw-method-xrgb8888-blt-untiled: - shard-apl: [PASS][31] -> [DMESG-FAIL][32] ([i915#54] / [i915#95]) +1 similar issue [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl7/igt@kms_draw_crc@draw-method-xrgb8888-blt-untiled.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl3/igt@kms_draw_crc@draw-method-xrgb8888-blt-untiled.html * igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a2: - shard-glk: [PASS][33] -> [FAIL][34] ([i915#79]) [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-glk1/igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a2.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-glk5/igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a2.html * igt@kms_flip@flip-vs-suspend@c-dp1: - shard-kbl: [PASS][35] -> [DMESG-WARN][36] ([i915#180]) +7 similar issues [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl4/igt@kms_flip@flip-vs-suspend@c-dp1.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl1/igt@kms_flip@flip-vs-suspend@c-dp1.html * igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-mmap-gtt: - shard-tglb: [PASS][37] -> [DMESG-WARN][38] ([i915#1982]) [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-tglb5/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-mmap-gtt.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-tglb1/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-mmap-gtt.html * igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence: - shard-kbl: [PASS][39] -> [DMESG-FAIL][40] ([i915#95]) [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl7/igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl4/igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence.html * igt@kms_plane_cursor@pipe-a-overlay-size-64: - shard-apl: [PASS][41] -> [DMESG-FAIL][42] ([i915#95]) +1 similar issue [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl2/igt@kms_plane_cursor@pipe-a-overlay-size-64.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl7/igt@kms_plane_cursor@pipe-a-overlay-size-64.html * igt@kms_psr@psr2_primary_mmap_gtt: - shard-iclb: [PASS][43] -> [SKIP][44] ([fdo#109441]) +1 similar issue [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-iclb2/igt@kms_psr@psr2_primary_mmap_gtt.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-iclb3/igt@kms_psr@psr2_primary_mmap_gtt.html * igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend: - shard-tglb: [PASS][45] -> [INCOMPLETE][46] ([i915#1602]) [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-tglb2/igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend.html [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-tglb8/igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend.html * igt@syncobj_wait@invalid-multi-wait-all-unsubmitted-submitted: - shard-tglb: [PASS][47] -> [DMESG-WARN][48] ([i915#402]) [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-tglb7/igt@syncobj_wait@invalid-multi-wait-all-unsubmitted-submitted.html [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-tglb5/igt@syncobj_wait@invalid-multi-wait-all-unsubmitted-submitted.html #### Possible fixes #### * igt@gem_ctx_persistence@legacy-engines-mixed-process@bsd1: - shard-tglb: [FAIL][49] ([i915#1528]) -> [PASS][50] [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-tglb2/igt@gem_ctx_persistence@legacy-engines-mixed-process@bsd1.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-tglb6/igt@gem_ctx_persistence@legacy-engines-mixed-process@bsd1.html * igt@gem_eio@kms: - shard-snb: [DMESG-WARN][51] ([i915#1982]) -> [PASS][52] [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-snb1/igt@gem_eio@kms.html [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-snb2/igt@gem_eio@kms.html * igt@gem_exec_whisper@basic-contexts: - shard-iclb: [DMESG-WARN][53] ([i915#1982]) -> [PASS][54] [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-iclb2/igt@gem_exec_whisper@basic-contexts.html [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-iclb8/igt@gem_exec_whisper@basic-contexts.html * igt@i915_pm_dc@dc6-psr: - shard-iclb: [FAIL][55] ([i915#1899]) -> [PASS][56] [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-iclb2/igt@i915_pm_dc@dc6-psr.html [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-iclb4/igt@i915_pm_dc@dc6-psr.html * igt@i915_suspend@debugfs-reader: - shard-tglb: [INCOMPLETE][57] ([i915#1602] / [i915#456]) -> [PASS][58] [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-tglb3/igt@i915_suspend@debugfs-reader.html [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-tglb2/igt@i915_suspend@debugfs-reader.html * igt@kms_addfb_basic@bad-pitch-128: - shard-snb: [TIMEOUT][59] ([i915#1958]) -> [PASS][60] +4 similar issues [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-snb6/igt@kms_addfb_basic@bad-pitch-128.html [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-snb6/igt@kms_addfb_basic@bad-pitch-128.html - shard-hsw: [TIMEOUT][61] ([i915#1958]) -> [PASS][62] +4 similar issues [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-hsw2/igt@kms_addfb_basic@bad-pitch-128.html [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-hsw2/igt@kms_addfb_basic@bad-pitch-128.html * igt@kms_big_fb@x-tiled-8bpp-rotate-0: - shard-apl: [DMESG-WARN][63] ([i915#1982]) -> [PASS][64] [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl8/igt@kms_big_fb@x-tiled-8bpp-rotate-0.html [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl6/igt@kms_big_fb@x-tiled-8bpp-rotate-0.html - shard-glk: [DMESG-WARN][65] ([i915#1982]) -> [PASS][66] [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-glk5/igt@kms_big_fb@x-tiled-8bpp-rotate-0.html [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-glk5/igt@kms_big_fb@x-tiled-8bpp-rotate-0.html * igt@kms_cursor_edge_walk@pipe-a-64x64-bottom-edge: - shard-apl: [DMESG-WARN][67] ([i915#95]) -> [PASS][68] +42 similar issues [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl6/igt@kms_cursor_edge_walk@pipe-a-64x64-bottom-edge.html [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl7/igt@kms_cursor_edge_walk@pipe-a-64x64-bottom-edge.html * igt@kms_draw_crc@draw-method-xrgb8888-mmap-gtt-xtiled: - shard-kbl: [DMESG-WARN][69] ([i915#93] / [i915#95]) -> [PASS][70] +41 similar issues [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl2/igt@kms_draw_crc@draw-method-xrgb8888-mmap-gtt-xtiled.html [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl2/igt@kms_draw_crc@draw-method-xrgb8888-mmap-gtt-xtiled.html * igt@kms_flip@flip-vs-suspend-interruptible@a-dp1: - shard-kbl: [DMESG-WARN][71] ([i915#180]) -> [PASS][72] +5 similar issues [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl6/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl2/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt: - shard-apl: [FAIL][73] ([i915#49]) -> [PASS][74] [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt.html [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt.html - shard-kbl: [FAIL][75] ([i915#49]) -> [PASS][76] [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl4/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt.html [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-cpu: - shard-tglb: [DMESG-WARN][77] ([i915#1982]) -> [PASS][78] [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-tglb5/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-cpu.html [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-tglb3/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-cpu.html * igt@kms_plane_alpha_blend@pipe-a-constant-alpha-mid: - shard-kbl: [DMESG-FAIL][79] ([fdo#108145] / [i915#95]) -> [PASS][80] +1 similar issue [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl1/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-mid.html [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl2/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-mid.html * igt@kms_plane_alpha_blend@pipe-a-coverage-vs-premult-vs-constant: - shard-apl: [DMESG-FAIL][81] ([fdo#108145] / [i915#95]) -> [PASS][82] +1 similar issue [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl3/igt@kms_plane_alpha_blend@pipe-a-coverage-vs-premult-vs-constant.html [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl8/igt@kms_plane_alpha_blend@pipe-a-coverage-vs-premult-vs-constant.html * igt@kms_psr@psr2_cursor_plane_onoff: - shard-iclb: [SKIP][83] ([fdo#109441]) -> [PASS][84] [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-iclb1/igt@kms_psr@psr2_cursor_plane_onoff.html [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-iclb2/igt@kms_psr@psr2_cursor_plane_onoff.html * igt@kms_vblank@pipe-b-ts-continuation-dpms-suspend: - shard-apl: [INCOMPLETE][85] -> [PASS][86] [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl6/igt@kms_vblank@pipe-b-ts-continuation-dpms-suspend.html [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl2/igt@kms_vblank@pipe-b-ts-continuation-dpms-suspend.html * igt@perf_pmu@module-unload: - shard-tglb: [DMESG-WARN][87] ([i915#402]) -> [PASS][88] +1 similar issue [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-tglb1/igt@perf_pmu@module-unload.html [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-tglb5/igt@perf_pmu@module-unload.html * igt@perf_pmu@semaphore-busy@rcs0: - shard-kbl: [FAIL][89] ([i915#1820] / [i915#93] / [i915#95]) -> [PASS][90] [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl7/igt@perf_pmu@semaphore-busy@rcs0.html [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl7/igt@perf_pmu@semaphore-busy@rcs0.html #### Warnings #### * igt@gem_ctx_persistence@engines-cleanup: - shard-hsw: [SKIP][91] ([fdo#109271] / [i915#1099]) -> [TIMEOUT][92] ([i915#1958]) [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-hsw1/igt@gem_ctx_persistence@engines-cleanup.html [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-hsw5/igt@gem_ctx_persistence@engines-cleanup.html - shard-snb: [SKIP][93] ([fdo#109271] / [i915#1099]) -> [TIMEOUT][94] ([i915#1958]) [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-snb6/igt@gem_ctx_persistence@engines-cleanup.html [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-snb1/igt@gem_ctx_persistence@engines-cleanup.html * igt@i915_pm_dc@dc3co-vpb-simulation: - shard-iclb: [SKIP][95] ([i915#658]) -> [SKIP][96] ([i915#588]) [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-iclb6/igt@i915_pm_dc@dc3co-vpb-simulation.html [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-iclb2/igt@i915_pm_dc@dc3co-vpb-simulation.html * igt@i915_pm_dc@dc6-psr: - shard-tglb: [FAIL][97] ([i915#1899]) -> [FAIL][98] ([i915#454]) [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-tglb5/igt@i915_pm_dc@dc6-psr.html [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-tglb6/igt@i915_pm_dc@dc6-psr.html * igt@kms_content_protection@atomic-dpms: - shard-kbl: [TIMEOUT][99] ([i915#1319] / [i915#1958]) -> [TIMEOUT][100] ([i915#1319]) +1 similar issue [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl2/igt@kms_content_protection@atomic-dpms.html [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl6/igt@kms_content_protection@atomic-dpms.html * igt@kms_content_protection@lic: - shard-apl: [FAIL][101] ([fdo#110321]) -> [DMESG-FAIL][102] ([fdo#110321] / [i915#95]) [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl3/igt@kms_content_protection@lic.html [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl1/igt@kms_content_protection@lic.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-pgflip-blt: - shard-snb: [SKIP][103] ([fdo#109271]) -> [TIMEOUT][104] ([i915#1958]) +4 similar issues [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-snb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-pgflip-blt.html [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-snb1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-pgflip-blt.html - shard-hsw: [SKIP][105] ([fdo#109271]) -> [TIMEOUT][106] ([i915#1958]) +4 similar issues [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-hsw4/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-pgflip-blt.html [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-hsw5/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-pgflip-blt.html * igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb: - shard-apl: [FAIL][107] ([fdo#108145] / [i915#265]) -> [DMESG-FAIL][108] ([fdo#108145] / [i915#95]) +1 similar issue [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl6/igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb.html [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl3/igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb.html * igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb: - shard-apl: [DMESG-FAIL][109] ([i915#95]) -> [FAIL][110] ([i915#265]) [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-apl6/igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb.html [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-apl1/igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb.html - shard-kbl: [DMESG-FAIL][111] ([i915#95]) -> [FAIL][112] ([i915#265]) [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl6/igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb.html [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl6/igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb.html * igt@kms_vblank@pipe-a-ts-continuation-suspend: - shard-kbl: [DMESG-WARN][113] ([i915#93] / [i915#95]) -> [DMESG-WARN][114] ([i915#180]) [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5712/shard-kbl4/igt@kms_vblank@pipe-a-ts-continuation-suspend.html [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/shard-kbl7/igt@kms_vblank@pipe-a-ts-continuation-suspend.html [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#110321]: https://bugs.freedesktop.org/show_bug.cgi?id=110321 [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099 [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118 [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319 [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436 [i915#1528]: https://gitlab.freedesktop.org/drm/intel/issues/1528 [i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602 [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 [i915#1820]: https://gitlab.freedesktop.org/drm/intel/issues/1820 [i915#1899]: https://gitlab.freedesktop.org/drm/intel/issues/1899 [i915#1958]: https://gitlab.freedesktop.org/drm/intel/issues/1958 [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265 [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402 [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 [i915#456]: https://gitlab.freedesktop.org/drm/intel/issues/456 [i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49 [i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54 [i915#58]: https://gitlab.freedesktop.org/drm/intel/issues/58 [i915#588]: https://gitlab.freedesktop.org/drm/intel/issues/588 [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658 [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716 [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79 [i915#82]: https://gitlab.freedesktop.org/drm/intel/issues/82 [i915#93]: https://gitlab.freedesktop.org/drm/intel/issues/93 [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 [i915#96]: https://gitlab.freedesktop.org/drm/intel/issues/96 [k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133 Participating hosts (8 -> 8) ------------------------------ No changes in participating hosts Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_5712 -> IGTPW_4679 CI-20190529: 20190529 CI_DRM_8639: 47584e59cf51ec499d68a4cefbaf447448ce2894 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_4679: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/index.html IGT_5712: eba1135ddd35f9d3097ed91032aefe8f9a9f9d02 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4679/index.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads 2020-06-16 14:14 [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Arkadiusz Hiler ` (6 preceding siblings ...) 2020-06-17 16:44 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork @ 2020-06-18 12:51 ` Petri Latvala 7 siblings, 0 replies; 12+ messages in thread From: Petri Latvala @ 2020-06-18 12:51 UTC (permalink / raw) To: Arkadiusz Hiler; +Cc: igt-dev On Tue, Jun 16, 2020 at 05:14:48PM +0300, Arkadiusz Hiler wrote: > So that we know what's the source of messages. > > igt_thread.c is created to facilitate more threading-related > functionality that will come in the following patch. > > Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> "lib/core: Print thred:tid with igt_log for non-main threads" Typo, thred -> thread Otherwise, Reviewed-by: Petri Latvala <petri.latvala@intel.com> > --- > lib/Makefile.sources | 2 ++ > lib/igt_core.c | 44 +++++++++++++++++++++++++++++++++++++------- > lib/igt_thread.c | 39 +++++++++++++++++++++++++++++++++++++++ > lib/igt_thread.h | 24 ++++++++++++++++++++++++ > lib/meson.build | 1 + > 5 files changed, 103 insertions(+), 7 deletions(-) > create mode 100644 lib/igt_thread.c > create mode 100644 lib/igt_thread.h > > diff --git a/lib/Makefile.sources b/lib/Makefile.sources > index 09aedb40..00374c97 100644 > --- a/lib/Makefile.sources > +++ b/lib/Makefile.sources > @@ -64,6 +64,8 @@ lib_source_list = \ > igt_sysfs.h \ > igt_sysrq.c \ > igt_sysrq.h \ > + igt_thread.c \ > + igt_thread.h \ > igt_x86.h \ > igt_x86.c \ > igt_vec.c \ > diff --git a/lib/igt_core.c b/lib/igt_core.c > index cbcc3f4d..c95295c7 100644 > --- a/lib/igt_core.c > +++ b/lib/igt_core.c > @@ -72,6 +72,7 @@ > #include "igt_rc.h" > #include "igt_list.h" > #include "igt_device_scan.h" > +#include "igt_thread.h" > > #define UNW_LOCAL_ONLY > #include <libunwind.h> > @@ -2687,6 +2688,12 @@ void igt_log(const char *domain, enum igt_log_level level, const char *format, . > va_end(args); > } > > +static pthread_key_t __vlog_line_continuation; > + > +igt_constructor { > + pthread_key_create(&__vlog_line_continuation, NULL); > +} > + > /** > * igt_vlog: > * @domain: the log domain, or NULL for no domain > @@ -2705,6 +2712,7 @@ void igt_vlog(const char *domain, enum igt_log_level level, const char *format, > { > FILE *file; > char *line, *formatted_line; > + char *thread_id; > const char *program_name; > const char *igt_log_level_str[] = { > "DEBUG", > @@ -2713,7 +2721,8 @@ void igt_vlog(const char *domain, enum igt_log_level level, const char *format, > "CRITICAL", > "NONE" > }; > - static bool line_continuation = false; > + > + static pthread_mutex_t print_mutex = PTHREAD_MUTEX_INITIALIZER; > > assert(format); > > @@ -2723,23 +2732,37 @@ void igt_vlog(const char *domain, enum igt_log_level level, const char *format, > program_name = command_str; > #endif > > + > + if (igt_thread_is_main()) { > + thread_id = strdup(""); > + } else { > + if (asprintf(&thread_id, "[thread:%d] ", gettid()) == -1) > + thread_id = NULL; > + } > + > + if (!thread_id) > + goto out; > + > if (list_subtests && level <= IGT_LOG_WARN) > return; > > if (vasprintf(&line, format, args) == -1) > return; > > - if (line_continuation) { > + if (pthread_getspecific(__vlog_line_continuation)) { > formatted_line = strdup(line); > if (!formatted_line) > goto out; > - } else if (asprintf(&formatted_line, "(%s:%d) %s%s%s: %s", program_name, > - getpid(), (domain) ? domain : "", (domain) ? "-" : "", > + } else if (asprintf(&formatted_line, "(%s:%d) %s%s%s%s: %s", program_name, > + getpid(), thread_id, (domain) ? domain : "", (domain) ? "-" : "", > igt_log_level_str[level], line) == -1) { > goto out; > } > > - line_continuation = line[strlen(line) - 1] != '\n'; > + if (line[strlen(line) - 1] == '\n') > + pthread_setspecific(__vlog_line_continuation, (void*) false); > + else > + pthread_setspecific(__vlog_line_continuation, (void*) true); > > /* append log buffer */ > _igt_log_buffer_append(formatted_line); > @@ -2758,6 +2781,8 @@ void igt_vlog(const char *domain, enum igt_log_level level, const char *format, > goto out; > } > > + pthread_mutex_lock(&print_mutex); > + > /* use stderr for warning messages and above */ > if (level >= IGT_LOG_WARN) { > file = stderr; > @@ -2768,13 +2793,18 @@ void igt_vlog(const char *domain, enum igt_log_level level, const char *format, > > /* prepend all except information messages with process, domain and log > * level information */ > - if (level != IGT_LOG_INFO) > + if (level != IGT_LOG_INFO) { > fwrite(formatted_line, sizeof(char), strlen(formatted_line), > file); > - else > + } else { > + fwrite(thread_id, sizeof(char), strlen(thread_id), file); > fwrite(line, sizeof(char), strlen(line), file); > + } > + > + pthread_mutex_unlock(&print_mutex); > > out: > + free(thread_id); > free(line); > } > > diff --git a/lib/igt_thread.c b/lib/igt_thread.c > new file mode 100644 > index 00000000..deab6225 > --- /dev/null > +++ b/lib/igt_thread.c > @@ -0,0 +1,39 @@ > +/* > + * Copyright © 2020 Intel Corporation > + * > + * Permission is hereby granted, free of charge, to any person obtaining a > + * copy of this software and associated documentation files (the "Software"), > + * to deal in the Software without restriction, including without limitation > + * the rights to use, copy, modify, merge, publish, distribute, sublicense, > + * and/or sell copies of the Software, and to permit persons to whom the > + * Software is furnished to do so, subject to the following conditions: > + * > + * The above copyright notice and this permission notice (including the next > + * paragraph) shall be included in all copies or substantial portions of the > + * Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR > + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, > + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL > + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER > + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING > + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS > + * IN THE SOFTWARE. > + */ > + > +#include <pthread.h> > + > +#include "igt_core.h" > +#include "igt_thread.h" > + > +static pthread_key_t __igt_is_main_thread; > + > +bool igt_thread_is_main(void) > +{ > + return pthread_getspecific(__igt_is_main_thread) != NULL; > +} > + > +igt_constructor { > + pthread_key_create(&__igt_is_main_thread, NULL); > + pthread_setspecific(__igt_is_main_thread, (void*) 0x1); > +} > diff --git a/lib/igt_thread.h b/lib/igt_thread.h > new file mode 100644 > index 00000000..b16f803f > --- /dev/null > +++ b/lib/igt_thread.h > @@ -0,0 +1,24 @@ > +/* > + * Copyright © 2020 Intel Corporation > + * > + * Permission is hereby granted, free of charge, to any person obtaining a > + * copy of this software and associated documentation files (the "Software"), > + * to deal in the Software without restriction, including without limitation > + * the rights to use, copy, modify, merge, publish, distribute, sublicense, > + * and/or sell copies of the Software, and to permit persons to whom the > + * Software is furnished to do so, subject to the following conditions: > + * > + * The above copyright notice and this permission notice (including the next > + * paragraph) shall be included in all copies or substantial portions of the > + * Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR > + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, > + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL > + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER > + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING > + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS > + * IN THE SOFTWARE. > + */ > + > +bool igt_thread_is_main(void); > diff --git a/lib/meson.build b/lib/meson.build > index 6cf78663..6c71ae3d 100644 > --- a/lib/meson.build > +++ b/lib/meson.build > @@ -26,6 +26,7 @@ lib_sources = [ > 'igt_syncobj.c', > 'igt_sysfs.c', > 'igt_sysrq.c', > + 'igt_thread.c', > 'igt_vec.c', > 'igt_vgem.c', > 'igt_x86.c', > -- > 2.25.4 > _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2020-06-18 12:59 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2020-06-16 14:14 [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Arkadiusz Hiler 2020-06-16 14:14 ` [igt-dev] [PATCH i-g-t 2/3] lib/core: Handle asserts in threads Arkadiusz Hiler 2020-06-18 12:59 ` Petri Latvala 2020-06-16 14:14 ` [igt-dev] [PATCH i-g-t 3/3] igt/core: Disallow igt_require/skip in non-main threads Arkadiusz Hiler 2020-06-18 12:59 ` Petri Latvala 2020-06-16 16:55 ` [igt-dev] ✗ GitLab.Pipeline: warning for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for " Patchwork 2020-06-16 17:06 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork 2020-06-16 18:25 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork 2020-06-17 13:52 ` Arkadiusz Hiler 2020-06-17 14:37 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/3] lib/core: Print thred:tid with igt_log for non-main threads (rev2) Patchwork 2020-06-17 16:44 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork 2020-06-18 12:51 ` [igt-dev] [PATCH i-g-t 1/3] lib/core: Print thred:tid with igt_log for non-main threads Petri Latvala
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox