* [Intel-gfx] [PATCH 0/2] Selftest fixes for 6.1
@ 2022-10-19 12:10 Tvrtko Ursulin
2022-10-19 12:10 ` [Intel-gfx] [PATCH 1/2] drm/i915/selftests: Fix waiting for threads to start Tvrtko Ursulin
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: Tvrtko Ursulin @ 2022-10-19 12:10 UTC (permalink / raw)
To: Intel-gfx; +Cc: dri-devel
From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Warning - not much tested, mainly bypassing trybot for quick turnaround.
Tvrtko Ursulin (2):
drm/i915/selftests: Fix waiting for threads to start
drm/i915/selftests: Fix selftests for 6.1 kthread_stop semantics
.../drm/i915/gem/selftests/i915_gem_context.c | 9 +-
drivers/gpu/drm/i915/gt/selftest_execlists.c | 13 +-
drivers/gpu/drm/i915/gt/selftest_hangcheck.c | 5 +-
drivers/gpu/drm/i915/i915_selftest.h | 14 ++
drivers/gpu/drm/i915/selftests/i915_request.c | 136 ++++++++++++------
.../gpu/drm/i915/selftests/i915_selftest.c | 18 +++
6 files changed, 140 insertions(+), 55 deletions(-)
--
2.34.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Intel-gfx] [PATCH 1/2] drm/i915/selftests: Fix waiting for threads to start
2022-10-19 12:10 [Intel-gfx] [PATCH 0/2] Selftest fixes for 6.1 Tvrtko Ursulin
@ 2022-10-19 12:10 ` Tvrtko Ursulin
2022-10-19 12:10 ` [Intel-gfx] [PATCH 2/2] drm/i915/selftests: Fix selftests for 6.1 kthread_stop semantics Tvrtko Ursulin
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Tvrtko Ursulin @ 2022-10-19 12:10 UTC (permalink / raw)
To: Intel-gfx; +Cc: dri-devel
From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Tests which want to make sure all threads have started have to do that
explicitly since one yield() can not guarantee it. Issue is that many
tests then proceed to call kthread_stop() which can therefore return even
before the thread has been started and will instead just return an error
status.
Add a simple macro helper which can wait on a bunch of threads to start
and use it. Also refactor some tests so the helper can be used.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
---
.../drm/i915/gem/selftests/i915_gem_context.c | 5 +-
drivers/gpu/drm/i915/gt/selftest_execlists.c | 10 +-
drivers/gpu/drm/i915/gt/selftest_hangcheck.c | 5 +-
drivers/gpu/drm/i915/i915_selftest.h | 12 ++
drivers/gpu/drm/i915/selftests/i915_request.c | 126 ++++++++++++------
5 files changed, 111 insertions(+), 47 deletions(-)
diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
index c6ad67b90e8a..f5dc7ba2cdd7 100644
--- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
@@ -181,6 +181,7 @@ static int live_nop_switch(void *arg)
struct parallel_switch {
struct task_struct *tsk;
struct intel_context *ce[2];
+ bool running;
};
static int __live_parallel_switch1(void *data)
@@ -189,6 +190,7 @@ static int __live_parallel_switch1(void *data)
IGT_TIMEOUT(end_time);
unsigned long count;
+ WRITE_ONCE(arg->running, true);
count = 0;
do {
struct i915_request *rq = NULL;
@@ -233,6 +235,7 @@ static int __live_parallel_switchN(void *data)
unsigned long count;
int n;
+ WRITE_ONCE(arg->running, true);
count = 0;
do {
for (n = 0; n < ARRAY_SIZE(arg->ce); n++) {
@@ -370,7 +373,7 @@ static int live_parallel_switch(void *arg)
get_task_struct(data[n].tsk);
}
- yield(); /* start all threads before we kthread_stop() */
+ __igt_start_threads(data, count, tsk, running);
for (n = 0; n < count; n++) {
int status;
diff --git a/drivers/gpu/drm/i915/gt/selftest_execlists.c b/drivers/gpu/drm/i915/gt/selftest_execlists.c
index 56b7d5b5fea0..07f572ee9923 100644
--- a/drivers/gpu/drm/i915/gt/selftest_execlists.c
+++ b/drivers/gpu/drm/i915/gt/selftest_execlists.c
@@ -3479,6 +3479,7 @@ struct preempt_smoke {
unsigned int ncontext;
struct rnd_state prng;
unsigned long count;
+ bool running;
};
static struct i915_gem_context *smoke_context(struct preempt_smoke *smoke)
@@ -3544,6 +3545,7 @@ static int smoke_crescendo_thread(void *arg)
IGT_TIMEOUT(end_time);
unsigned long count;
+ WRITE_ONCE(smoke->running, true);
count = 0;
do {
struct i915_gem_context *ctx = smoke_context(smoke);
@@ -3576,23 +3578,25 @@ static int smoke_crescendo(struct preempt_smoke *smoke, unsigned int flags)
if (!arg)
return -ENOMEM;
+ memset(arg, 0, I915_NUM_ENGINES * sizeof(*arg));
+
for_each_engine(engine, smoke->gt, id) {
arg[id] = *smoke;
- arg[id].engine = engine;
if (!(flags & BATCH))
arg[id].batch = NULL;
arg[id].count = 0;
- tsk[id] = kthread_run(smoke_crescendo_thread, arg,
+ tsk[id] = kthread_run(smoke_crescendo_thread, &arg[id],
"igt/smoke:%d", id);
if (IS_ERR(tsk[id])) {
err = PTR_ERR(tsk[id]);
break;
}
+ arg[id].engine = engine;
get_task_struct(tsk[id]);
}
- yield(); /* start all threads before we kthread_stop() */
+ __igt_start_threads(arg, I915_NUM_ENGINES, engine, running);
count = 0;
for_each_engine(engine, smoke->gt, id) {
diff --git a/drivers/gpu/drm/i915/gt/selftest_hangcheck.c b/drivers/gpu/drm/i915/gt/selftest_hangcheck.c
index 7f3bb1d34dfb..ea1542e6b157 100644
--- a/drivers/gpu/drm/i915/gt/selftest_hangcheck.c
+++ b/drivers/gpu/drm/i915/gt/selftest_hangcheck.c
@@ -870,6 +870,7 @@ struct active_engine {
struct intel_engine_cs *engine;
unsigned long resets;
unsigned int flags;
+ bool running;
};
#define TEST_ACTIVE BIT(0)
@@ -910,6 +911,8 @@ static int active_engine(void *data)
unsigned long count;
int err = 0;
+ WRITE_ONCE(arg->running, true);
+
for (count = 0; count < ARRAY_SIZE(ce); count++) {
ce[count] = intel_context_create(engine);
if (IS_ERR(ce[count])) {
@@ -1048,7 +1051,7 @@ static int __igt_reset_engines(struct intel_gt *gt,
get_task_struct(tsk);
}
- yield(); /* start all threads before we begin */
+ __igt_start_threads(threads, I915_NUM_ENGINES, task, running);
st_engine_heartbeat_disable_no_pm(engine);
GEM_BUG_ON(test_and_set_bit(I915_RESET_ENGINE + id,
diff --git a/drivers/gpu/drm/i915/i915_selftest.h b/drivers/gpu/drm/i915/i915_selftest.h
index f54de0499be7..e4fcb71fb0ee 100644
--- a/drivers/gpu/drm/i915/i915_selftest.h
+++ b/drivers/gpu/drm/i915/i915_selftest.h
@@ -137,4 +137,16 @@ bool __igt_timeout(unsigned long timeout, const char *fmt, ...);
void igt_hexdump(const void *buf, size_t len);
+#define __igt_start_threads(array, num, cond, flag) \
+({ \
+ unsigned int n; \
+\
+restart: \
+ cond_resched(); \
+ for (n = 0; n < (num); n++) { \
+ if (array[n].cond && !READ_ONCE(array[n].running)) \
+ goto restart; \
+ } \
+})
+
#endif /* !__I915_SELFTEST_H__ */
diff --git a/drivers/gpu/drm/i915/selftests/i915_request.c b/drivers/gpu/drm/i915/selftests/i915_request.c
index 818a4909c1f3..9c313e9a771b 100644
--- a/drivers/gpu/drm/i915/selftests/i915_request.c
+++ b/drivers/gpu/drm/i915/selftests/i915_request.c
@@ -299,9 +299,16 @@ __live_request_alloc(struct intel_context *ce)
return intel_context_create_request(ce);
}
+struct smoke_thread {
+ struct smoketest *t;
+ struct task_struct *task;
+ bool running;
+};
+
static int __igt_breadcrumbs_smoketest(void *arg)
{
- struct smoketest *t = arg;
+ struct smoke_thread *thread = arg;
+ struct smoketest *t = thread->t;
const unsigned int max_batch = min(t->ncontexts, t->max_batch) - 1;
const unsigned int total = 4 * t->ncontexts + 1;
unsigned int num_waits = 0, num_fences = 0;
@@ -319,6 +326,8 @@ static int __igt_breadcrumbs_smoketest(void *arg)
* that the fences were marked as signaled.
*/
+ WRITE_ONCE(thread->running, true);
+
requests = kcalloc(total, sizeof(*requests), GFP_KERNEL);
if (!requests)
return -ENOMEM;
@@ -450,7 +459,7 @@ static int mock_breadcrumbs_smoketest(void *arg)
.request_alloc = __mock_request_alloc
};
unsigned int ncpus = num_online_cpus();
- struct task_struct **threads;
+ struct smoke_thread *threads;
unsigned int n;
int ret = 0;
@@ -479,28 +488,30 @@ static int mock_breadcrumbs_smoketest(void *arg)
}
for (n = 0; n < ncpus; n++) {
- threads[n] = kthread_run(__igt_breadcrumbs_smoketest,
- &t, "igt/%d", n);
- if (IS_ERR(threads[n])) {
- ret = PTR_ERR(threads[n]);
+ threads[n].task = kthread_run(__igt_breadcrumbs_smoketest,
+ &threads[n], "igt/%d", n);
+ if (IS_ERR(threads[n].task)) {
+ ret = PTR_ERR(threads[n].task);
ncpus = n;
break;
+ } else {
+ threads[n].t = &t;
}
- get_task_struct(threads[n]);
+ get_task_struct(threads[n].task);
}
- yield(); /* start all threads before we begin */
+ __igt_start_threads(threads, ncpus, t, running);
msleep(jiffies_to_msecs(i915_selftest.timeout_jiffies));
for (n = 0; n < ncpus; n++) {
int err;
- err = kthread_stop(threads[n]);
+ err = kthread_stop(threads[n].task);
if (err < 0 && !ret)
ret = err;
- put_task_struct(threads[n]);
+ put_task_struct(threads[n].task);
}
pr_info("Completed %lu waits for %lu fence across %d cpus\n",
atomic_long_read(&t.num_waits),
@@ -1419,13 +1430,21 @@ static int live_sequential_engines(void *arg)
return err;
}
+struct parallel_thread {
+ struct task_struct *task;
+ struct intel_engine_cs *engine;
+ bool running;
+};
+
static int __live_parallel_engine1(void *arg)
{
- struct intel_engine_cs *engine = arg;
+ struct parallel_thread *thread = arg;
+ struct intel_engine_cs *engine = thread->engine;
IGT_TIMEOUT(end_time);
unsigned long count;
int err = 0;
+ WRITE_ONCE(thread->running, true);
count = 0;
intel_engine_pm_get(engine);
do {
@@ -1457,11 +1476,13 @@ static int __live_parallel_engine1(void *arg)
static int __live_parallel_engineN(void *arg)
{
- struct intel_engine_cs *engine = arg;
+ struct parallel_thread *thread = arg;
+ struct intel_engine_cs *engine = thread->engine;
IGT_TIMEOUT(end_time);
unsigned long count;
int err = 0;
+ WRITE_ONCE(thread->running, true);
count = 0;
intel_engine_pm_get(engine);
do {
@@ -1507,7 +1528,8 @@ static int wait_for_all(struct drm_i915_private *i915)
static int __live_parallel_spin(void *arg)
{
- struct intel_engine_cs *engine = arg;
+ struct parallel_thread *thread = arg;
+ struct intel_engine_cs *engine = thread->engine;
struct igt_spinner spin;
struct i915_request *rq;
int err = 0;
@@ -1518,6 +1540,8 @@ static int __live_parallel_spin(void *arg)
* able to start in time.
*/
+ WRITE_ONCE(thread->running, true);
+
if (igt_spinner_init(&spin, engine->gt)) {
wake_all(engine->i915);
return -ENOMEM;
@@ -1566,9 +1590,9 @@ static int live_parallel_engines(void *arg)
NULL,
};
const unsigned int nengines = num_uabi_engines(i915);
+ struct parallel_thread *threads;
struct intel_engine_cs *engine;
int (* const *fn)(void *arg);
- struct task_struct **tsk;
int err = 0;
/*
@@ -1576,8 +1600,8 @@ static int live_parallel_engines(void *arg)
* tests that we load up the system maximally.
*/
- tsk = kcalloc(nengines, sizeof(*tsk), GFP_KERNEL);
- if (!tsk)
+ threads = kcalloc(nengines, sizeof(*threads), GFP_KERNEL);
+ if (!threads)
return -ENOMEM;
for (fn = func; !err && *fn; fn++) {
@@ -1594,37 +1618,39 @@ static int live_parallel_engines(void *arg)
idx = 0;
for_each_uabi_engine(engine, i915) {
- tsk[idx] = kthread_run(*fn, engine,
- "igt/parallel:%s",
- engine->name);
- if (IS_ERR(tsk[idx])) {
- err = PTR_ERR(tsk[idx]);
+ threads[idx].running = false;
+ threads[idx].task =
+ kthread_run(*fn, &threads[idx],
+ "igt/parallel:%s", engine->name);
+ if (IS_ERR(threads[idx].task)) {
+ err = PTR_ERR(threads[idx].task);
+ threads[idx].task = NULL;
break;
}
- get_task_struct(tsk[idx++]);
+ get_task_struct(threads[idx++].task);
}
- yield(); /* start all threads before we kthread_stop() */
+ __igt_start_threads(threads, nengines, task, running);
idx = 0;
for_each_uabi_engine(engine, i915) {
int status;
- if (IS_ERR(tsk[idx]))
+ if (!threads[idx].task)
break;
- status = kthread_stop(tsk[idx]);
+ status = kthread_stop(threads[idx].task);
if (status && !err)
err = status;
- put_task_struct(tsk[idx++]);
+ put_task_struct(threads[idx++].task);
}
if (igt_live_test_end(&t))
err = -EIO;
}
- kfree(tsk);
+ kfree(threads);
return err;
}
@@ -1672,7 +1698,7 @@ static int live_breadcrumbs_smoketest(void *arg)
const unsigned int ncpus = num_online_cpus();
unsigned long num_waits, num_fences;
struct intel_engine_cs *engine;
- struct task_struct **threads;
+ struct smoke_thread *threads;
struct igt_live_test live;
intel_wakeref_t wakeref;
struct smoketest *smoke;
@@ -1749,20 +1775,22 @@ static int live_breadcrumbs_smoketest(void *arg)
struct task_struct *tsk;
tsk = kthread_run(__igt_breadcrumbs_smoketest,
- &smoke[idx], "igt/%d.%d", idx, n);
+ &threads[idx * ncpus + n],
+ "igt/%d.%d", idx, n);
if (IS_ERR(tsk)) {
ret = PTR_ERR(tsk);
goto out_flush;
}
get_task_struct(tsk);
- threads[idx * ncpus + n] = tsk;
+ threads[idx * ncpus + n].task = tsk;
+ threads[idx * ncpus + n].t = &smoke[idx];
}
idx++;
}
- yield(); /* start all threads before we begin */
+ __igt_start_threads(threads, ncpus * nengines, t, running);
msleep(jiffies_to_msecs(i915_selftest.timeout_jiffies));
out_flush:
@@ -1771,7 +1799,7 @@ static int live_breadcrumbs_smoketest(void *arg)
num_fences = 0;
for_each_uabi_engine(engine, i915) {
for (n = 0; n < ncpus; n++) {
- struct task_struct *tsk = threads[idx * ncpus + n];
+ struct task_struct *tsk = threads[idx * ncpus + n].task;
int err;
if (!tsk)
@@ -2891,9 +2919,17 @@ static int perf_series_engines(void *arg)
return err;
}
+struct p_thread {
+ struct perf_stats p;
+ struct task_struct *tsk;
+ struct intel_engine_cs *engine;
+ bool running;
+};
+
static int p_sync0(void *arg)
{
- struct perf_stats *p = arg;
+ struct p_thread *thread = arg;
+ struct perf_stats *p = &thread->p;
struct intel_engine_cs *engine = p->engine;
struct intel_context *ce;
IGT_TIMEOUT(end_time);
@@ -2901,6 +2937,8 @@ static int p_sync0(void *arg)
bool busy;
int err = 0;
+ WRITE_ONCE(thread->running, true);
+
ce = intel_context_create(engine);
if (IS_ERR(ce))
return PTR_ERR(ce);
@@ -2963,7 +3001,8 @@ static int p_sync0(void *arg)
static int p_sync1(void *arg)
{
- struct perf_stats *p = arg;
+ struct p_thread *thread = arg;
+ struct perf_stats *p = &thread->p;
struct intel_engine_cs *engine = p->engine;
struct i915_request *prev = NULL;
struct intel_context *ce;
@@ -2972,6 +3011,8 @@ static int p_sync1(void *arg)
bool busy;
int err = 0;
+ WRITE_ONCE(thread->running, true);
+
ce = intel_context_create(engine);
if (IS_ERR(ce))
return PTR_ERR(ce);
@@ -3036,7 +3077,8 @@ static int p_sync1(void *arg)
static int p_many(void *arg)
{
- struct perf_stats *p = arg;
+ struct p_thread *thread = arg;
+ struct perf_stats *p = &thread->p;
struct intel_engine_cs *engine = p->engine;
struct intel_context *ce;
IGT_TIMEOUT(end_time);
@@ -3044,6 +3086,8 @@ static int p_many(void *arg)
int err = 0;
bool busy;
+ WRITE_ONCE(thread->running, true);
+
ce = intel_context_create(engine);
if (IS_ERR(ce))
return PTR_ERR(ce);
@@ -3108,10 +3152,7 @@ static int perf_parallel_engines(void *arg)
struct intel_engine_cs *engine;
int (* const *fn)(void *arg);
struct pm_qos_request qos;
- struct {
- struct perf_stats p;
- struct task_struct *tsk;
- } *engines;
+ struct p_thread *engines;
int err = 0;
engines = kcalloc(nengines, sizeof(*engines), GFP_KERNEL);
@@ -3137,19 +3178,20 @@ static int perf_parallel_engines(void *arg)
intel_engine_pm_get(engine);
memset(&engines[idx].p, 0, sizeof(engines[idx].p));
- engines[idx].p.engine = engine;
- engines[idx].tsk = kthread_run(*fn, &engines[idx].p,
+ engines[idx].tsk = kthread_run(*fn, &engines[idx],
"igt:%s", engine->name);
if (IS_ERR(engines[idx].tsk)) {
err = PTR_ERR(engines[idx].tsk);
intel_engine_pm_put(engine);
break;
}
+ engines[idx].p.engine = engine;
+ engines[idx].engine = engine;
get_task_struct(engines[idx++].tsk);
}
- yield(); /* start all threads before we kthread_stop() */
+ __igt_start_threads(engines, nengines, engine, running);
idx = 0;
for_each_uabi_engine(engine, i915) {
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Intel-gfx] [PATCH 2/2] drm/i915/selftests: Fix selftests for 6.1 kthread_stop semantics
2022-10-19 12:10 [Intel-gfx] [PATCH 0/2] Selftest fixes for 6.1 Tvrtko Ursulin
2022-10-19 12:10 ` [Intel-gfx] [PATCH 1/2] drm/i915/selftests: Fix waiting for threads to start Tvrtko Ursulin
@ 2022-10-19 12:10 ` Tvrtko Ursulin
2022-10-19 14:28 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Selftest fixes for 6.1 Patchwork
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Tvrtko Ursulin @ 2022-10-19 12:10 UTC (permalink / raw)
To: Intel-gfx; +Cc: dri-devel
From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Since a7c01fa93aeb ("signal: break out of wait loops on kthread_stop()")
kthread_stop will mark a pending signal which breaks __igt_timeout when
used from selftests threads. Result of this is overly short test execution
time which renders some tests useless.
Add a new __igt_thread_timeout helper and use it from selftest threads.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
---
.../drm/i915/gem/selftests/i915_gem_context.c | 4 ++--
drivers/gpu/drm/i915/gt/selftest_execlists.c | 3 ++-
drivers/gpu/drm/i915/i915_selftest.h | 2 ++
drivers/gpu/drm/i915/selftests/i915_request.c | 10 +++++-----
drivers/gpu/drm/i915/selftests/i915_selftest.c | 18 ++++++++++++++++++
5 files changed, 29 insertions(+), 8 deletions(-)
diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
index f5dc7ba2cdd7..1172d0d6e07a 100644
--- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
@@ -221,7 +221,7 @@ static int __live_parallel_switch1(void *data)
return err;
count++;
- } while (!__igt_timeout(end_time, NULL));
+ } while (!__igt_thread_timeout(end_time, NULL));
pr_info("%s: %lu switches (sync)\n", arg->ce[0]->engine->name, count);
return 0;
@@ -262,7 +262,7 @@ static int __live_parallel_switchN(void *data)
}
count++;
- } while (!__igt_timeout(end_time, NULL));
+ } while (!__igt_thread_timeout(end_time, NULL));
i915_request_put(rq);
pr_info("%s: %lu switches (many)\n", arg->ce[0]->engine->name, count);
diff --git a/drivers/gpu/drm/i915/gt/selftest_execlists.c b/drivers/gpu/drm/i915/gt/selftest_execlists.c
index 07f572ee9923..e63c0ac3d861 100644
--- a/drivers/gpu/drm/i915/gt/selftest_execlists.c
+++ b/drivers/gpu/drm/i915/gt/selftest_execlists.c
@@ -3558,7 +3558,8 @@ static int smoke_crescendo_thread(void *arg)
return err;
count++;
- } while (count < smoke->ncontext && !__igt_timeout(end_time, NULL));
+ } while (count < smoke->ncontext &&
+ !__igt_thread_timeout(end_time, NULL));
smoke->count = count;
return 0;
diff --git a/drivers/gpu/drm/i915/i915_selftest.h b/drivers/gpu/drm/i915/i915_selftest.h
index e4fcb71fb0ee..a233f167ec44 100644
--- a/drivers/gpu/drm/i915/i915_selftest.h
+++ b/drivers/gpu/drm/i915/i915_selftest.h
@@ -131,6 +131,8 @@ static inline int i915_perf_selftests(struct pci_dev *pdev) { return 0; }
__printf(2, 3)
bool __igt_timeout(unsigned long timeout, const char *fmt, ...);
+__printf(2, 3)
+bool __igt_thread_timeout(unsigned long timeout, const char *fmt, ...);
#define igt_timeout(t, fmt, ...) \
__igt_timeout((t), KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
diff --git a/drivers/gpu/drm/i915/selftests/i915_request.c b/drivers/gpu/drm/i915/selftests/i915_request.c
index 9c313e9a771b..5c576ee94e5d 100644
--- a/drivers/gpu/drm/i915/selftests/i915_request.c
+++ b/drivers/gpu/drm/i915/selftests/i915_request.c
@@ -1467,7 +1467,7 @@ static int __live_parallel_engine1(void *arg)
break;
count++;
- } while (!__igt_timeout(end_time, NULL));
+ } while (!__igt_thread_timeout(end_time, NULL));
intel_engine_pm_put(engine);
pr_info("%s: %lu request + sync\n", engine->name, count);
@@ -1496,7 +1496,7 @@ static int __live_parallel_engineN(void *arg)
i915_request_add(rq);
count++;
- } while (!__igt_timeout(end_time, NULL));
+ } while (!__igt_thread_timeout(end_time, NULL));
intel_engine_pm_put(engine);
pr_info("%s: %lu requests\n", engine->name, count);
@@ -2978,7 +2978,7 @@ static int p_sync0(void *arg)
break;
count++;
- } while (!__igt_timeout(end_time, NULL));
+ } while (!__igt_thread_timeout(end_time, NULL));
if (busy) {
ktime_t now;
@@ -3053,7 +3053,7 @@ static int p_sync1(void *arg)
break;
count++;
- } while (!__igt_timeout(end_time, NULL));
+ } while (!__igt_thread_timeout(end_time, NULL));
i915_request_put(prev);
if (busy) {
@@ -3118,7 +3118,7 @@ static int p_many(void *arg)
i915_request_add(rq);
count++;
- } while (!__igt_timeout(end_time, NULL));
+ } while (!__igt_thread_timeout(end_time, NULL));
if (busy) {
ktime_t now;
diff --git a/drivers/gpu/drm/i915/selftests/i915_selftest.c b/drivers/gpu/drm/i915/selftests/i915_selftest.c
index 39da0fb0d6d2..afba2c3db1a9 100644
--- a/drivers/gpu/drm/i915/selftests/i915_selftest.c
+++ b/drivers/gpu/drm/i915/selftests/i915_selftest.c
@@ -397,6 +397,24 @@ bool __igt_timeout(unsigned long timeout, const char *fmt, ...)
return true;
}
+
+bool __igt_thread_timeout(unsigned long timeout, const char *fmt, ...)
+{
+ va_list va;
+
+ cond_resched();
+ if (time_before(jiffies, timeout))
+ return false;
+
+ if (fmt) {
+ va_start(va, fmt);
+ vprintk(fmt, va);
+ va_end(va);
+ }
+
+ return true;
+}
+
void igt_hexdump(const void *buf, size_t len)
{
const size_t rowsize = 8 * sizeof(u32);
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Selftest fixes for 6.1
2022-10-19 12:10 [Intel-gfx] [PATCH 0/2] Selftest fixes for 6.1 Tvrtko Ursulin
2022-10-19 12:10 ` [Intel-gfx] [PATCH 1/2] drm/i915/selftests: Fix waiting for threads to start Tvrtko Ursulin
2022-10-19 12:10 ` [Intel-gfx] [PATCH 2/2] drm/i915/selftests: Fix selftests for 6.1 kthread_stop semantics Tvrtko Ursulin
@ 2022-10-19 14:28 ` Patchwork
2022-10-19 14:28 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2022-10-19 14:28 UTC (permalink / raw)
To: Tvrtko Ursulin; +Cc: intel-gfx
== Series Details ==
Series: Selftest fixes for 6.1
URL : https://patchwork.freedesktop.org/series/109879/
State : warning
== Summary ==
Error: dim checkpatch failed
b6a846cd517f drm/i915/selftests: Fix waiting for threads to start
-:141: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'array' - possible side-effects?
#141: FILE: drivers/gpu/drm/i915/i915_selftest.h:140:
+#define __igt_start_threads(array, num, cond, flag) \
+({ \
+ unsigned int n; \
+\
+restart: \
+ cond_resched(); \
+ for (n = 0; n < (num); n++) { \
+ if (array[n].cond && !READ_ONCE(array[n].running)) \
+ goto restart; \
+ } \
+})
-:141: CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'cond' may be better as '(cond)' to avoid precedence issues
#141: FILE: drivers/gpu/drm/i915/i915_selftest.h:140:
+#define __igt_start_threads(array, num, cond, flag) \
+({ \
+ unsigned int n; \
+\
+restart: \
+ cond_resched(); \
+ for (n = 0; n < (num); n++) { \
+ if (array[n].cond && !READ_ONCE(array[n].running)) \
+ goto restart; \
+ } \
+})
-:141: WARNING:MACRO_WITH_FLOW_CONTROL: Macros with flow control statements should be avoided
#141: FILE: drivers/gpu/drm/i915/i915_selftest.h:140:
+#define __igt_start_threads(array, num, cond, flag) \
+({ \
+ unsigned int n; \
+\
+restart: \
+ cond_resched(); \
+ for (n = 0; n < (num); n++) { \
+ if (array[n].cond && !READ_ONCE(array[n].running)) \
+ goto restart; \
+ } \
+})
total: 0 errors, 1 warnings, 2 checks, 439 lines checked
101cf31aff47 drm/i915/selftests: Fix selftests for 6.1 kthread_stop semantics
-:7: ERROR:GIT_COMMIT_ID: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'commit a7c01fa93aeb ("signal: break out of wait loops on kthread_stop()")'
#7:
Since a7c01fa93aeb ("signal: break out of wait loops on kthread_stop()")
-:122: CHECK:LINE_SPACING: Please don't use multiple blank lines
#122: FILE: drivers/gpu/drm/i915/selftests/i915_selftest.c:400:
+
total: 1 errors, 0 warnings, 1 checks, 97 lines checked
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Intel-gfx] ✗ Fi.CI.SPARSE: warning for Selftest fixes for 6.1
2022-10-19 12:10 [Intel-gfx] [PATCH 0/2] Selftest fixes for 6.1 Tvrtko Ursulin
` (2 preceding siblings ...)
2022-10-19 14:28 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Selftest fixes for 6.1 Patchwork
@ 2022-10-19 14:28 ` Patchwork
2022-10-19 14:50 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork
2022-10-19 15:01 ` [Intel-gfx] [PATCH 0/2] " Tvrtko Ursulin
5 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2022-10-19 14:28 UTC (permalink / raw)
To: Tvrtko Ursulin; +Cc: intel-gfx
== Series Details ==
Series: Selftest fixes for 6.1
URL : https://patchwork.freedesktop.org/series/109879/
State : warning
== Summary ==
Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Intel-gfx] ✗ Fi.CI.BAT: failure for Selftest fixes for 6.1
2022-10-19 12:10 [Intel-gfx] [PATCH 0/2] Selftest fixes for 6.1 Tvrtko Ursulin
` (3 preceding siblings ...)
2022-10-19 14:28 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
@ 2022-10-19 14:50 ` Patchwork
2022-10-19 15:01 ` [Intel-gfx] [PATCH 0/2] " Tvrtko Ursulin
5 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2022-10-19 14:50 UTC (permalink / raw)
To: Tvrtko Ursulin; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 25314 bytes --]
== Series Details ==
Series: Selftest fixes for 6.1
URL : https://patchwork.freedesktop.org/series/109879/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_12261 -> Patchwork_109879v1
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_109879v1 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_109879v1, 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/Patchwork_109879v1/index.html
Participating hosts (42 -> 43)
------------------------------
Additional (3): fi-rkl-11600 fi-icl-u2 fi-tgl-dsi
Missing (2): fi-kbl-soraka bat-rpls-2
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_109879v1:
### CI changes ###
#### Possible regressions ####
* boot:
- fi-ilk-650: [PASS][1] -> [FAIL][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-ilk-650/boot.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-ilk-650/boot.html
### IGT changes ###
#### Possible regressions ####
* igt@i915_pm_rpm@basic-pci-d3-state:
- bat-adlp-4: [PASS][3] -> [DMESG-WARN][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-adlp-4/igt@i915_pm_rpm@basic-pci-d3-state.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-adlp-4/igt@i915_pm_rpm@basic-pci-d3-state.html
* igt@i915_selftest@live@requests:
- fi-bsw-nick: [PASS][5] -> [DMESG-FAIL][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-bsw-nick/igt@i915_selftest@live@requests.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-bsw-nick/igt@i915_selftest@live@requests.html
- fi-hsw-g3258: [PASS][7] -> [DMESG-FAIL][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-hsw-g3258/igt@i915_selftest@live@requests.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-hsw-g3258/igt@i915_selftest@live@requests.html
- fi-bdw-gvtdvm: [PASS][9] -> [DMESG-FAIL][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-bdw-gvtdvm/igt@i915_selftest@live@requests.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-bdw-gvtdvm/igt@i915_selftest@live@requests.html
- fi-bsw-kefka: [PASS][11] -> [DMESG-FAIL][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-bsw-kefka/igt@i915_selftest@live@requests.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-bsw-kefka/igt@i915_selftest@live@requests.html
- fi-hsw-4770: [PASS][13] -> [DMESG-FAIL][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-hsw-4770/igt@i915_selftest@live@requests.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-hsw-4770/igt@i915_selftest@live@requests.html
- fi-cml-u2: [PASS][15] -> [DMESG-FAIL][16]
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-cml-u2/igt@i915_selftest@live@requests.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-cml-u2/igt@i915_selftest@live@requests.html
- fi-ivb-3770: [PASS][17] -> [DMESG-FAIL][18]
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-ivb-3770/igt@i915_selftest@live@requests.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-ivb-3770/igt@i915_selftest@live@requests.html
- fi-elk-e7500: [PASS][19] -> [DMESG-FAIL][20]
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-elk-e7500/igt@i915_selftest@live@requests.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-elk-e7500/igt@i915_selftest@live@requests.html
- fi-snb-2600: [PASS][21] -> [DMESG-FAIL][22]
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-snb-2600/igt@i915_selftest@live@requests.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-snb-2600/igt@i915_selftest@live@requests.html
- fi-bxt-dsi: [PASS][23] -> [DMESG-FAIL][24]
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-bxt-dsi/igt@i915_selftest@live@requests.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-bxt-dsi/igt@i915_selftest@live@requests.html
- fi-pnv-d510: [PASS][25] -> [DMESG-FAIL][26]
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-pnv-d510/igt@i915_selftest@live@requests.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-pnv-d510/igt@i915_selftest@live@requests.html
- fi-glk-j4005: [PASS][27] -> [DMESG-FAIL][28]
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-glk-j4005/igt@i915_selftest@live@requests.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-glk-j4005/igt@i915_selftest@live@requests.html
- fi-kbl-7567u: [PASS][29] -> [DMESG-FAIL][30]
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-kbl-7567u/igt@i915_selftest@live@requests.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-kbl-7567u/igt@i915_selftest@live@requests.html
- fi-rkl-11600: NOTRUN -> [DMESG-FAIL][31]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@i915_selftest@live@requests.html
- fi-adl-ddr5: [PASS][32] -> [DMESG-FAIL][33]
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-adl-ddr5/igt@i915_selftest@live@requests.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-adl-ddr5/igt@i915_selftest@live@requests.html
- fi-cfl-guc: [PASS][34] -> [DMESG-FAIL][35]
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-cfl-guc/igt@i915_selftest@live@requests.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-cfl-guc/igt@i915_selftest@live@requests.html
- fi-cfl-8109u: [PASS][36] -> [DMESG-FAIL][37]
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-cfl-8109u/igt@i915_selftest@live@requests.html
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-cfl-8109u/igt@i915_selftest@live@requests.html
- fi-blb-e6850: [PASS][38] -> [DMESG-FAIL][39]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-blb-e6850/igt@i915_selftest@live@requests.html
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-blb-e6850/igt@i915_selftest@live@requests.html
- fi-skl-6600u: [PASS][40] -> [INCOMPLETE][41]
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-skl-6600u/igt@i915_selftest@live@requests.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-skl-6600u/igt@i915_selftest@live@requests.html
- fi-icl-u2: NOTRUN -> [DMESG-FAIL][42]
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-icl-u2/igt@i915_selftest@live@requests.html
- fi-apl-guc: [PASS][43] -> [DMESG-FAIL][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-apl-guc/igt@i915_selftest@live@requests.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-apl-guc/igt@i915_selftest@live@requests.html
- fi-bdw-5557u: [PASS][45] -> [DMESG-FAIL][46]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-bdw-5557u/igt@i915_selftest@live@requests.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-bdw-5557u/igt@i915_selftest@live@requests.html
- fi-snb-2520m: [PASS][47] -> [DMESG-FAIL][48]
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-snb-2520m/igt@i915_selftest@live@requests.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-snb-2520m/igt@i915_selftest@live@requests.html
- fi-rkl-guc: [PASS][49] -> [DMESG-FAIL][50]
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-rkl-guc/igt@i915_selftest@live@requests.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-guc/igt@i915_selftest@live@requests.html
- fi-skl-guc: [PASS][51] -> [DMESG-FAIL][52]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-skl-guc/igt@i915_selftest@live@requests.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-skl-guc/igt@i915_selftest@live@requests.html
- fi-cfl-8700k: [PASS][53] -> [DMESG-FAIL][54]
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-cfl-8700k/igt@i915_selftest@live@requests.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-cfl-8700k/igt@i915_selftest@live@requests.html
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@i915_selftest@live@requests:
- {bat-jsl-3}: [PASS][55] -> [DMESG-FAIL][56]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-jsl-3/igt@i915_selftest@live@requests.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-jsl-3/igt@i915_selftest@live@requests.html
- {bat-dg2-8}: [PASS][57] -> [DMESG-FAIL][58]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-dg2-8/igt@i915_selftest@live@requests.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-dg2-8/igt@i915_selftest@live@requests.html
- {bat-adlm-1}: [PASS][59] -> [DMESG-FAIL][60]
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-adlm-1/igt@i915_selftest@live@requests.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-adlm-1/igt@i915_selftest@live@requests.html
- {bat-jsl-1}: [PASS][61] -> [DMESG-FAIL][62]
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-jsl-1/igt@i915_selftest@live@requests.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-jsl-1/igt@i915_selftest@live@requests.html
- {fi-jsl-1}: [PASS][63] -> [DMESG-FAIL][64]
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-jsl-1/igt@i915_selftest@live@requests.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-jsl-1/igt@i915_selftest@live@requests.html
- {fi-tgl-dsi}: NOTRUN -> [INCOMPLETE][65]
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-tgl-dsi/igt@i915_selftest@live@requests.html
- {bat-rplp-1}: NOTRUN -> [DMESG-FAIL][66]
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-rplp-1/igt@i915_selftest@live@requests.html
- {bat-dg2-9}: [DMESG-FAIL][67] ([i915#7269]) -> [INCOMPLETE][68]
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-dg2-9/igt@i915_selftest@live@requests.html
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-dg2-9/igt@i915_selftest@live@requests.html
- {bat-adln-1}: [PASS][69] -> [DMESG-FAIL][70]
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-adln-1/igt@i915_selftest@live@requests.html
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-adln-1/igt@i915_selftest@live@requests.html
- {bat-adlp-6}: [PASS][71] -> [DMESG-FAIL][72]
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-adlp-6/igt@i915_selftest@live@requests.html
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-adlp-6/igt@i915_selftest@live@requests.html
- {fi-ehl-2}: [PASS][73] -> [DMESG-FAIL][74]
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-ehl-2/igt@i915_selftest@live@requests.html
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-ehl-2/igt@i915_selftest@live@requests.html
- {bat-dg2-11}: [PASS][75] -> [INCOMPLETE][76]
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-dg2-11/igt@i915_selftest@live@requests.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-dg2-11/igt@i915_selftest@live@requests.html
- {fi-tgl-mst}: [PASS][77] -> [DMESG-FAIL][78]
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-tgl-mst/igt@i915_selftest@live@requests.html
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-tgl-mst/igt@i915_selftest@live@requests.html
Known issues
------------
Here are the changes found in Patchwork_109879v1 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_huc_copy@huc-copy:
- fi-icl-u2: NOTRUN -> [SKIP][79] ([i915#2190])
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-icl-u2/igt@gem_huc_copy@huc-copy.html
- fi-rkl-11600: NOTRUN -> [SKIP][80] ([i915#2190])
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@gem_huc_copy@huc-copy.html
* igt@gem_lmem_swapping@basic:
- fi-rkl-11600: NOTRUN -> [SKIP][81] ([i915#4613]) +3 similar issues
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@gem_lmem_swapping@basic.html
* igt@gem_lmem_swapping@random-engines:
- fi-icl-u2: NOTRUN -> [SKIP][82] ([i915#4613]) +3 similar issues
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-icl-u2/igt@gem_lmem_swapping@random-engines.html
* igt@gem_tiled_blits@basic:
- fi-pnv-d510: [PASS][83] -> [SKIP][84] ([fdo#109271])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-pnv-d510/igt@gem_tiled_blits@basic.html
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-pnv-d510/igt@gem_tiled_blits@basic.html
* igt@gem_tiled_pread_basic:
- fi-rkl-11600: NOTRUN -> [SKIP][85] ([i915#3282])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@gem_tiled_pread_basic.html
* igt@i915_pm_backlight@basic-brightness:
- fi-rkl-11600: NOTRUN -> [SKIP][86] ([i915#3012])
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@i915_pm_backlight@basic-brightness.html
* igt@kms_chamelium@hdmi-edid-read:
- fi-rkl-11600: NOTRUN -> [SKIP][87] ([fdo#111827]) +7 similar issues
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@kms_chamelium@hdmi-edid-read.html
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-icl-u2: NOTRUN -> [SKIP][88] ([fdo#111827]) +7 similar issues
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-icl-u2/igt@kms_chamelium@hdmi-hpd-fast.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor:
- fi-rkl-11600: NOTRUN -> [SKIP][89] ([i915#4103])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@kms_cursor_legacy@basic-busy-flip-before-cursor.html
- fi-icl-u2: NOTRUN -> [SKIP][90] ([i915#4103])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor.html
* igt@kms_force_connector_basic@force-load-detect:
- fi-rkl-11600: NOTRUN -> [SKIP][91] ([fdo#109285] / [i915#4098])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@kms_force_connector_basic@force-load-detect.html
- fi-icl-u2: NOTRUN -> [SKIP][92] ([fdo#109285])
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-icl-u2/igt@kms_force_connector_basic@force-load-detect.html
* igt@kms_psr@primary_page_flip:
- fi-rkl-11600: NOTRUN -> [SKIP][93] ([i915#1072]) +3 similar issues
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@kms_psr@primary_page_flip.html
* igt@kms_setmode@basic-clone-single-crtc:
- fi-rkl-11600: NOTRUN -> [SKIP][94] ([i915#3555] / [i915#4098])
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@kms_setmode@basic-clone-single-crtc.html
- fi-icl-u2: NOTRUN -> [SKIP][95] ([i915#3555])
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-icl-u2/igt@kms_setmode@basic-clone-single-crtc.html
* igt@prime_vgem@basic-read:
- fi-rkl-11600: NOTRUN -> [SKIP][96] ([fdo#109295] / [i915#3291] / [i915#3708]) +2 similar issues
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@prime_vgem@basic-read.html
* igt@prime_vgem@basic-userptr:
- fi-icl-u2: NOTRUN -> [SKIP][97] ([fdo#109295] / [i915#3301])
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-icl-u2/igt@prime_vgem@basic-userptr.html
- fi-rkl-11600: NOTRUN -> [SKIP][98] ([fdo#109295] / [i915#3301] / [i915#3708])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@prime_vgem@basic-userptr.html
* igt@runner@aborted:
- fi-hsw-4770: NOTRUN -> [FAIL][99] ([fdo#109271] / [i915#4312] / [i915#5594])
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-hsw-4770/igt@runner@aborted.html
- bat-adlp-4: NOTRUN -> [FAIL][100] ([i915#4312])
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-adlp-4/igt@runner@aborted.html
- fi-cml-u2: NOTRUN -> [FAIL][101] ([i915#4312])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-cml-u2/igt@runner@aborted.html
- fi-elk-e7500: NOTRUN -> [FAIL][102] ([fdo#109271] / [i915#4312])
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-elk-e7500/igt@runner@aborted.html
- fi-snb-2600: NOTRUN -> [FAIL][103] ([i915#4312])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-snb-2600/igt@runner@aborted.html
- fi-bxt-dsi: NOTRUN -> [FAIL][104] ([i915#4312])
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-bxt-dsi/igt@runner@aborted.html
- fi-pnv-d510: NOTRUN -> [FAIL][105] ([fdo#109271] / [i915#4312])
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-pnv-d510/igt@runner@aborted.html
- fi-glk-j4005: NOTRUN -> [FAIL][106] ([i915#4312])
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-glk-j4005/igt@runner@aborted.html
- fi-kbl-7567u: NOTRUN -> [FAIL][107] ([i915#4312])
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-kbl-7567u/igt@runner@aborted.html
- fi-rkl-11600: NOTRUN -> [FAIL][108] ([i915#4312])
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-11600/igt@runner@aborted.html
- fi-adl-ddr5: NOTRUN -> [FAIL][109] ([i915#4312])
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-adl-ddr5/igt@runner@aborted.html
- fi-cfl-guc: NOTRUN -> [FAIL][110] ([i915#4312])
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-cfl-guc/igt@runner@aborted.html
- fi-cfl-8109u: NOTRUN -> [FAIL][111] ([i915#4312])
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-cfl-8109u/igt@runner@aborted.html
- fi-blb-e6850: NOTRUN -> [FAIL][112] ([fdo#109271] / [i915#4312])
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-blb-e6850/igt@runner@aborted.html
- fi-icl-u2: NOTRUN -> [FAIL][113] ([i915#4312])
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-icl-u2/igt@runner@aborted.html
- fi-apl-guc: NOTRUN -> [FAIL][114] ([fdo#109271] / [i915#4312])
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-apl-guc/igt@runner@aborted.html
- fi-bdw-5557u: NOTRUN -> [FAIL][115] ([i915#4312])
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-bdw-5557u/igt@runner@aborted.html
- fi-snb-2520m: NOTRUN -> [FAIL][116] ([i915#4312])
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-snb-2520m/igt@runner@aborted.html
- fi-rkl-guc: NOTRUN -> [FAIL][117] ([i915#4312])
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-rkl-guc/igt@runner@aborted.html
- fi-skl-guc: NOTRUN -> [FAIL][118] ([i915#4312])
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-skl-guc/igt@runner@aborted.html
- fi-cfl-8700k: NOTRUN -> [FAIL][119] ([i915#4312])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-cfl-8700k/igt@runner@aborted.html
- fi-bsw-nick: NOTRUN -> [FAIL][120] ([fdo#109271] / [i915#4312])
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-bsw-nick/igt@runner@aborted.html
- fi-hsw-g3258: NOTRUN -> [FAIL][121] ([fdo#109271] / [i915#4312] / [i915#4991])
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-hsw-g3258/igt@runner@aborted.html
- fi-bdw-gvtdvm: NOTRUN -> [FAIL][122] ([i915#4312])
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-bdw-gvtdvm/igt@runner@aborted.html
- fi-bsw-kefka: NOTRUN -> [FAIL][123] ([fdo#109271] / [i915#4312])
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-bsw-kefka/igt@runner@aborted.html
#### Possible fixes ####
* igt@gem_huc_copy@huc-copy:
- {bat-dg2-8}: [FAIL][124] ([i915#7029]) -> [PASS][125]
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-dg2-8/igt@gem_huc_copy@huc-copy.html
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-dg2-8/igt@gem_huc_copy@huc-copy.html
* igt@gem_linear_blits@basic:
- fi-pnv-d510: [SKIP][126] ([fdo#109271]) -> [PASS][127]
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/fi-pnv-d510/igt@gem_linear_blits@basic.html
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/fi-pnv-d510/igt@gem_linear_blits@basic.html
* igt@i915_pm_rpm@basic-rte:
- {bat-rplp-1}: [DMESG-WARN][128] -> [PASS][129]
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-rplp-1/igt@i915_pm_rpm@basic-rte.html
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-rplp-1/igt@i915_pm_rpm@basic-rte.html
* igt@i915_selftest@live@gt_heartbeat:
- {bat-jsl-1}: [DMESG-FAIL][130] -> [PASS][131]
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12261/bat-jsl-1/igt@i915_selftest@live@gt_heartbeat.html
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/bat-jsl-1/igt@i915_selftest@live@gt_heartbeat.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1759]: https://gitlab.freedesktop.org/drm/intel/issues/1759
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#3012]: https://gitlab.freedesktop.org/drm/intel/issues/3012
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
[i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
[i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991
[i915#5594]: https://gitlab.freedesktop.org/drm/intel/issues/5594
[i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
[i915#7029]: https://gitlab.freedesktop.org/drm/intel/issues/7029
[i915#7269]: https://gitlab.freedesktop.org/drm/intel/issues/7269
Build changes
-------------
* Linux: CI_DRM_12261 -> Patchwork_109879v1
CI-20190529: 20190529
CI_DRM_12261: 41447224fdfbfbfd1e9ffa5fabc9d277f9c02f8a @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_7019: fdbafce2b74e84739bb1d81223ae6f01fb442980 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_109879v1: 41447224fdfbfbfd1e9ffa5fabc9d277f9c02f8a @ git://anongit.freedesktop.org/gfx-ci/linux
### Linux commits
7db75fe7c7f2 drm/i915/selftests: Fix selftests for 6.1 kthread_stop semantics
12e4f148aa23 drm/i915/selftests: Fix waiting for threads to start
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_109879v1/index.html
[-- Attachment #2: Type: text/html, Size: 29965 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Intel-gfx] [PATCH 0/2] Selftest fixes for 6.1
2022-10-19 12:10 [Intel-gfx] [PATCH 0/2] Selftest fixes for 6.1 Tvrtko Ursulin
` (4 preceding siblings ...)
2022-10-19 14:50 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork
@ 2022-10-19 15:01 ` Tvrtko Ursulin
5 siblings, 0 replies; 7+ messages in thread
From: Tvrtko Ursulin @ 2022-10-19 15:01 UTC (permalink / raw)
To: Intel-gfx; +Cc: dri-devel
On 19/10/2022 13:10, Tvrtko Ursulin wrote:
> From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
>
> Warning - not much tested, mainly bypassing trybot for quick turnaround.
Please ignore - this is quite broken and problem more complicated.
Regards,
Tvrtko
> Tvrtko Ursulin (2):
> drm/i915/selftests: Fix waiting for threads to start
> drm/i915/selftests: Fix selftests for 6.1 kthread_stop semantics
>
> .../drm/i915/gem/selftests/i915_gem_context.c | 9 +-
> drivers/gpu/drm/i915/gt/selftest_execlists.c | 13 +-
> drivers/gpu/drm/i915/gt/selftest_hangcheck.c | 5 +-
> drivers/gpu/drm/i915/i915_selftest.h | 14 ++
> drivers/gpu/drm/i915/selftests/i915_request.c | 136 ++++++++++++------
> .../gpu/drm/i915/selftests/i915_selftest.c | 18 +++
> 6 files changed, 140 insertions(+), 55 deletions(-)
>
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2022-10-19 15:01 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-10-19 12:10 [Intel-gfx] [PATCH 0/2] Selftest fixes for 6.1 Tvrtko Ursulin
2022-10-19 12:10 ` [Intel-gfx] [PATCH 1/2] drm/i915/selftests: Fix waiting for threads to start Tvrtko Ursulin
2022-10-19 12:10 ` [Intel-gfx] [PATCH 2/2] drm/i915/selftests: Fix selftests for 6.1 kthread_stop semantics Tvrtko Ursulin
2022-10-19 14:28 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Selftest fixes for 6.1 Patchwork
2022-10-19 14:28 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2022-10-19 14:50 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork
2022-10-19 15:01 ` [Intel-gfx] [PATCH 0/2] " Tvrtko Ursulin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox