* [Intel-gfx] [PATCH 1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight
@ 2020-03-10 14:13 Chris Wilson
2020-03-10 14:13 ` [Intel-gfx] [PATCH 2/3] drm/i915: Mark up racy read of active rq->engine Chris Wilson
` (4 more replies)
0 siblings, 5 replies; 9+ messages in thread
From: Chris Wilson @ 2020-03-10 14:13 UTC (permalink / raw)
To: intel-gfx
When being used across multiple real engines inside a virtual engine,
the intel_context.inflight is updated atomically, and so we must
annotate the racy read from outside the owning context.
[11142.482846] BUG: KCSAN: data-race in __execlists_submission_tasklet [i915] / __execlists_submission_tasklet [i915]
[11142.482867]
[11142.482878] write (marked) to 0xffff8881f257b5e0 of 8 bytes by interrupt on cpu 2:
[11142.483107] __execlists_submission_tasklet+0x1d33/0x2120 [i915]
[11142.483336] execlists_submission_tasklet+0xd3/0x170 [i915]
[11142.483355] tasklet_action_common.isra.0+0x42/0xa0
[11142.483371] __do_softirq+0xd7/0x2cd
[11142.483384] irq_exit+0xbe/0xe0
[11142.483401] do_IRQ+0x51/0x100
[11142.483424] ret_from_intr+0x0/0x1c
[11142.483446] do_idle+0x133/0x1f0
[11142.483465] cpu_startup_entry+0x14/0x16
[11142.483483] start_secondary+0x120/0x180
[11142.483498] secondary_startup_64+0xa4/0xb0
[11142.483512]
[11142.483528] read to 0xffff8881f257b5e0 of 8 bytes by interrupt on cpu 1:
[11142.483755] __execlists_submission_tasklet+0x14e/0x2120 [i915]
[11142.483981] execlists_submission_tasklet+0xd3/0x170 [i915]
[11142.483999] tasklet_action_common.isra.0+0x42/0xa0
[11142.484014] __do_softirq+0xd7/0x2cd
[11142.484028] do_softirq_own_stack+0x2a/0x40
[11142.484046] do_softirq.part.0+0x26/0x30
[11142.484071] __local_bh_enable_ip+0x46/0x50
[11142.484299] i915_gem_do_execbuffer+0x39c1/0x4e50 [i915]
[11142.484528] i915_gem_execbuffer2_ioctl+0x2c3/0x580 [i915]
[11142.484546] drm_ioctl_kernel+0xe4/0x120
[11142.484559] drm_ioctl+0x297/0x4c7
[11142.484572] ksys_ioctl+0x89/0xb0
[11142.484586] __x64_sys_ioctl+0x42/0x60
[11142.484610] do_syscall_64+0x6e/0x2c0
[11142.484627] entry_SYSCALL_64_after_hwframe+0x44/0xa9
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/gt/intel_context_types.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_context_types.h b/drivers/gpu/drm/i915/gt/intel_context_types.h
index 11278343b9b5..0f3b68b95c56 100644
--- a/drivers/gpu/drm/i915/gt/intel_context_types.h
+++ b/drivers/gpu/drm/i915/gt/intel_context_types.h
@@ -45,8 +45,8 @@ struct intel_context {
struct intel_engine_cs *engine;
struct intel_engine_cs *inflight;
-#define intel_context_inflight(ce) ptr_mask_bits((ce)->inflight, 2)
-#define intel_context_inflight_count(ce) ptr_unmask_bits((ce)->inflight, 2)
+#define intel_context_inflight(ce) ptr_mask_bits(READ_ONCE((ce)->inflight), 2)
+#define intel_context_inflight_count(ce) ptr_unmask_bits(READ_ONCE((ce)->inflight), 2)
struct i915_address_space *vm;
struct i915_gem_context __rcu *gem_context;
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Intel-gfx] [PATCH 2/3] drm/i915: Mark up racy read of active rq->engine
2020-03-10 14:13 [Intel-gfx] [PATCH 1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight Chris Wilson
@ 2020-03-10 14:13 ` Chris Wilson
2020-03-10 14:24 ` [Intel-gfx] [PATCH v2] " Chris Wilson
2020-03-10 14:13 ` [Intel-gfx] [PATCH 3/3] drm/i915/execlists: Mark up data-races in virtual engines Chris Wilson
` (3 subsequent siblings)
4 siblings, 1 reply; 9+ messages in thread
From: Chris Wilson @ 2020-03-10 14:13 UTC (permalink / raw)
To: intel-gfx
As a virtual engine may change the rq->engine to point to the active
request in flight, we need to warn the compiler that an active request's
engine is volatile.
[ 95.017686] write (marked) to 0xffff8881e8386b10 of 8 bytes by interrupt on cpu 2:
[ 95.018123] execlists_dequeue+0x762/0x2150 [i915]
[ 95.018539] __execlists_submission_tasklet+0x48/0x60 [i915]
[ 95.018955] execlists_submission_tasklet+0xd3/0x170 [i915]
[ 95.018986] tasklet_action_common.isra.0+0x42/0xa0
[ 95.019016] __do_softirq+0xd7/0x2cd
[ 95.019043] irq_exit+0xbe/0xe0
[ 95.019068] irq_work_interrupt+0xf/0x20
[ 95.019491] i915_request_retire+0x2c5/0x670 [i915]
[ 95.019937] retire_requests+0xa1/0xf0 [i915]
[ 95.020348] engine_retire+0xa1/0xe0 [i915]
[ 95.020376] process_one_work+0x3b1/0x690
[ 95.020403] worker_thread+0x80/0x670
[ 95.020429] kthread+0x19a/0x1e0
[ 95.020454] ret_from_fork+0x1f/0x30
[ 95.020476]
[ 95.020498] read to 0xffff8881e8386b10 of 8 bytes by task 8909 on cpu 3:
[ 95.020918] __i915_request_commit+0x177/0x220 [i915]
[ 95.021329] i915_gem_do_execbuffer+0x38c4/0x4e50 [i915]
[ 95.021750] i915_gem_execbuffer2_ioctl+0x2c3/0x580 [i915]
[ 95.021784] drm_ioctl_kernel+0xe4/0x120
[ 95.021809] drm_ioctl+0x297/0x4c7
[ 95.021832] ksys_ioctl+0x89/0xb0
[ 95.021865] __x64_sys_ioctl+0x42/0x60
[ 95.021901] do_syscall_64+0x6e/0x2c0
[ 95.021927] entry_SYSCALL_64_after_hwframe+0x44/0xa9
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/i915_request.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/i915_request.c b/drivers/gpu/drm/i915/i915_request.c
index 74169671afb5..e05252c574a4 100644
--- a/drivers/gpu/drm/i915/i915_request.c
+++ b/drivers/gpu/drm/i915/i915_request.c
@@ -1338,7 +1338,7 @@ __i915_request_add_to_timeline(struct i915_request *rq)
i915_seqno_passed(prev->fence.seqno,
rq->fence.seqno));
- if (is_power_of_2(prev->engine->mask | rq->engine->mask))
+ if (is_power_of_2(READ_ONCE(prev->engine)->mask | rq->engine->mask))
i915_sw_fence_await_sw_fence(&rq->submit,
&prev->submit,
&rq->submitq);
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Intel-gfx] [PATCH 3/3] drm/i915/execlists: Mark up data-races in virtual engines
2020-03-10 14:13 [Intel-gfx] [PATCH 1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight Chris Wilson
2020-03-10 14:13 ` [Intel-gfx] [PATCH 2/3] drm/i915: Mark up racy read of active rq->engine Chris Wilson
@ 2020-03-10 14:13 ` Chris Wilson
2020-03-10 15:35 ` Mika Kuoppala
2020-03-10 15:01 ` [Intel-gfx] [PATCH 1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight Mika Kuoppala
` (2 subsequent siblings)
4 siblings, 1 reply; 9+ messages in thread
From: Chris Wilson @ 2020-03-10 14:13 UTC (permalink / raw)
To: intel-gfx
The virtual engine passes tokens back and forth to its backing physical
engines.
[ 57.372993] BUG: KCSAN: data-race in execlists_dequeue [i915] / virtual_submission_tasklet [i915]
[ 57.373012]
[ 57.373023] write to 0xffff8881f47324c0 of 4 bytes by interrupt on cpu 2:
[ 57.373241] execlists_dequeue+0x6fa/0x2150 [i915]
[ 57.373458] __execlists_submission_tasklet+0x48/0x60 [i915]
[ 57.373677] execlists_submission_tasklet+0xd3/0x170 [i915]
[ 57.373694] tasklet_action_common.isra.0+0x42/0xa0
[ 57.373709] __do_softirq+0xd7/0x2cd
[ 57.373723] irq_exit+0xbe/0xe0
[ 57.373735] do_IRQ+0x51/0x100
[ 57.373748] ret_from_intr+0x0/0x1c
[ 57.373963] engine_retire+0x89/0xe0 [i915]
[ 57.373977] process_one_work+0x3b1/0x690
[ 57.373990] worker_thread+0x80/0x670
[ 57.374004] kthread+0x19a/0x1e0
[ 57.374017] ret_from_fork+0x1f/0x30
[ 57.374027]
[ 57.374038] read to 0xffff8881f47324c0 of 4 bytes by interrupt on cpu 3:
[ 57.374256] virtual_submission_tasklet+0x27/0x5a0 [i915]
[ 57.374273] tasklet_action_common.isra.0+0x42/0xa0
[ 57.374288] __do_softirq+0xd7/0x2cd
[ 57.374302] run_ksoftirqd+0x15/0x20
[ 57.374315] smpboot_thread_fn+0x1ab/0x300
[ 57.374329] kthread+0x19a/0x1e0
[ 57.374342] ret_from_fork+0x1f/0x30
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/gt/intel_lrc.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c
index 15b81be08fcc..8122f4bc2e90 100644
--- a/drivers/gpu/drm/i915/gt/intel_lrc.c
+++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
@@ -1004,7 +1004,7 @@ __unwind_incomplete_requests(struct intel_engine_cs *engine)
i915_request_cancel_breadcrumb(rq);
spin_unlock(&rq->lock);
}
- rq->engine = owner;
+ WRITE_ONCE(rq->engine, owner);
owner->submit_request(rq);
active = NULL;
}
@@ -2023,13 +2023,14 @@ static void execlists_dequeue(struct intel_engine_cs *engine)
"",
yesno(engine != ve->siblings[0]));
- ve->request = NULL;
- ve->base.execlists.queue_priority_hint = INT_MIN;
+ WRITE_ONCE(ve->request, NULL);
+ WRITE_ONCE(ve->base.execlists.queue_priority_hint,
+ INT_MIN);
rb_erase_cached(rb, &execlists->virtual);
RB_CLEAR_NODE(rb);
GEM_BUG_ON(!(rq->execution_mask & engine->mask));
- rq->engine = engine;
+ WRITE_ONCE(rq->engine, engine);
if (engine != ve->siblings[0]) {
u32 *regs = ve->context.lrc_reg_state;
@@ -4934,7 +4935,7 @@ static intel_engine_mask_t virtual_submission_mask(struct virtual_engine *ve)
static void virtual_submission_tasklet(unsigned long data)
{
struct virtual_engine * const ve = (struct virtual_engine *)data;
- const int prio = ve->base.execlists.queue_priority_hint;
+ const int prio = READ_ONCE(ve->base.execlists.queue_priority_hint);
intel_engine_mask_t mask;
unsigned int n;
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Intel-gfx] [PATCH v2] drm/i915: Mark up racy read of active rq->engine
2020-03-10 14:13 ` [Intel-gfx] [PATCH 2/3] drm/i915: Mark up racy read of active rq->engine Chris Wilson
@ 2020-03-10 14:24 ` Chris Wilson
2020-03-10 15:29 ` Mika Kuoppala
0 siblings, 1 reply; 9+ messages in thread
From: Chris Wilson @ 2020-03-10 14:24 UTC (permalink / raw)
To: intel-gfx
As a virtual engine may change the rq->engine to point to the active
request in flight, we need to warn the compiler that an active request's
engine is volatile.
[ 95.017686] write (marked) to 0xffff8881e8386b10 of 8 bytes by interrupt on cpu 2:
[ 95.018123] execlists_dequeue+0x762/0x2150 [i915]
[ 95.018539] __execlists_submission_tasklet+0x48/0x60 [i915]
[ 95.018955] execlists_submission_tasklet+0xd3/0x170 [i915]
[ 95.018986] tasklet_action_common.isra.0+0x42/0xa0
[ 95.019016] __do_softirq+0xd7/0x2cd
[ 95.019043] irq_exit+0xbe/0xe0
[ 95.019068] irq_work_interrupt+0xf/0x20
[ 95.019491] i915_request_retire+0x2c5/0x670 [i915]
[ 95.019937] retire_requests+0xa1/0xf0 [i915]
[ 95.020348] engine_retire+0xa1/0xe0 [i915]
[ 95.020376] process_one_work+0x3b1/0x690
[ 95.020403] worker_thread+0x80/0x670
[ 95.020429] kthread+0x19a/0x1e0
[ 95.020454] ret_from_fork+0x1f/0x30
[ 95.020476]
[ 95.020498] read to 0xffff8881e8386b10 of 8 bytes by task 8909 on cpu 3:
[ 95.020918] __i915_request_commit+0x177/0x220 [i915]
[ 95.021329] i915_gem_do_execbuffer+0x38c4/0x4e50 [i915]
[ 95.021750] i915_gem_execbuffer2_ioctl+0x2c3/0x580 [i915]
[ 95.021784] drm_ioctl_kernel+0xe4/0x120
[ 95.021809] drm_ioctl+0x297/0x4c7
[ 95.021832] ksys_ioctl+0x89/0xb0
[ 95.021865] __x64_sys_ioctl+0x42/0x60
[ 95.021901] do_syscall_64+0x6e/0x2c0
[ 95.021927] entry_SYSCALL_64_after_hwframe+0x44/0xa9
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/i915_request.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/i915/i915_request.c b/drivers/gpu/drm/i915/i915_request.c
index 74169671afb5..c0df71d7d0ff 100644
--- a/drivers/gpu/drm/i915/i915_request.c
+++ b/drivers/gpu/drm/i915/i915_request.c
@@ -977,6 +977,8 @@ emit_semaphore_wait(struct i915_request *to,
struct i915_request *from,
gfp_t gfp)
{
+ const intel_engine_mask_t mask = READ_ONCE(from->engine)->mask;
+
if (!intel_context_use_semaphores(to->context))
goto await_fence;
@@ -984,7 +986,7 @@ emit_semaphore_wait(struct i915_request *to,
goto await_fence;
/* Just emit the first semaphore we see as request space is limited. */
- if (already_busywaiting(to) & from->engine->mask)
+ if (already_busywaiting(to) & mask)
goto await_fence;
if (i915_request_await_start(to, from) < 0)
@@ -997,7 +999,7 @@ emit_semaphore_wait(struct i915_request *to,
if (__emit_semaphore_wait(to, from, from->fence.seqno))
goto await_fence;
- to->sched.semaphores |= from->engine->mask;
+ to->sched.semaphores |= mask;
to->sched.flags |= I915_SCHED_HAS_SEMAPHORE_CHAIN;
return 0;
@@ -1338,7 +1340,7 @@ __i915_request_add_to_timeline(struct i915_request *rq)
i915_seqno_passed(prev->fence.seqno,
rq->fence.seqno));
- if (is_power_of_2(prev->engine->mask | rq->engine->mask))
+ if (is_power_of_2(READ_ONCE(prev->engine)->mask | rq->engine->mask))
i915_sw_fence_await_sw_fence(&rq->submit,
&prev->submit,
&rq->submitq);
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [Intel-gfx] [PATCH 1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight
2020-03-10 14:13 [Intel-gfx] [PATCH 1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight Chris Wilson
2020-03-10 14:13 ` [Intel-gfx] [PATCH 2/3] drm/i915: Mark up racy read of active rq->engine Chris Wilson
2020-03-10 14:13 ` [Intel-gfx] [PATCH 3/3] drm/i915/execlists: Mark up data-races in virtual engines Chris Wilson
@ 2020-03-10 15:01 ` Mika Kuoppala
2020-03-11 8:40 ` [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight (rev2) Patchwork
2020-03-11 14:33 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
4 siblings, 0 replies; 9+ messages in thread
From: Mika Kuoppala @ 2020-03-10 15:01 UTC (permalink / raw)
To: Chris Wilson, intel-gfx
Chris Wilson <chris@chris-wilson.co.uk> writes:
> When being used across multiple real engines inside a virtual engine,
> the intel_context.inflight is updated atomically, and so we must
> annotate the racy read from outside the owning context.
>
> [11142.482846] BUG: KCSAN: data-race in __execlists_submission_tasklet [i915] / __execlists_submission_tasklet [i915]
> [11142.482867]
> [11142.482878] write (marked) to 0xffff8881f257b5e0 of 8 bytes by interrupt on cpu 2:
> [11142.483107] __execlists_submission_tasklet+0x1d33/0x2120 [i915]
> [11142.483336] execlists_submission_tasklet+0xd3/0x170 [i915]
> [11142.483355] tasklet_action_common.isra.0+0x42/0xa0
> [11142.483371] __do_softirq+0xd7/0x2cd
> [11142.483384] irq_exit+0xbe/0xe0
> [11142.483401] do_IRQ+0x51/0x100
> [11142.483424] ret_from_intr+0x0/0x1c
> [11142.483446] do_idle+0x133/0x1f0
> [11142.483465] cpu_startup_entry+0x14/0x16
> [11142.483483] start_secondary+0x120/0x180
> [11142.483498] secondary_startup_64+0xa4/0xb0
> [11142.483512]
> [11142.483528] read to 0xffff8881f257b5e0 of 8 bytes by interrupt on cpu 1:
> [11142.483755] __execlists_submission_tasklet+0x14e/0x2120 [i915]
> [11142.483981] execlists_submission_tasklet+0xd3/0x170 [i915]
> [11142.483999] tasklet_action_common.isra.0+0x42/0xa0
> [11142.484014] __do_softirq+0xd7/0x2cd
> [11142.484028] do_softirq_own_stack+0x2a/0x40
> [11142.484046] do_softirq.part.0+0x26/0x30
> [11142.484071] __local_bh_enable_ip+0x46/0x50
> [11142.484299] i915_gem_do_execbuffer+0x39c1/0x4e50 [i915]
> [11142.484528] i915_gem_execbuffer2_ioctl+0x2c3/0x580 [i915]
> [11142.484546] drm_ioctl_kernel+0xe4/0x120
> [11142.484559] drm_ioctl+0x297/0x4c7
> [11142.484572] ksys_ioctl+0x89/0xb0
> [11142.484586] __x64_sys_ioctl+0x42/0x60
> [11142.484610] do_syscall_64+0x6e/0x2c0
> [11142.484627] entry_SYSCALL_64_after_hwframe+0x44/0xa9
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/gt/intel_context_types.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_context_types.h b/drivers/gpu/drm/i915/gt/intel_context_types.h
> index 11278343b9b5..0f3b68b95c56 100644
> --- a/drivers/gpu/drm/i915/gt/intel_context_types.h
> +++ b/drivers/gpu/drm/i915/gt/intel_context_types.h
> @@ -45,8 +45,8 @@ struct intel_context {
>
> struct intel_engine_cs *engine;
> struct intel_engine_cs *inflight;
> -#define intel_context_inflight(ce) ptr_mask_bits((ce)->inflight, 2)
> -#define intel_context_inflight_count(ce) ptr_unmask_bits((ce)->inflight, 2)
> +#define intel_context_inflight(ce) ptr_mask_bits(READ_ONCE((ce)->inflight), 2)
> +#define intel_context_inflight_count(ce) ptr_unmask_bits(READ_ONCE((ce)->inflight), 2)
>
> struct i915_address_space *vm;
> struct i915_gem_context __rcu *gem_context;
> --
> 2.20.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Intel-gfx] [PATCH v2] drm/i915: Mark up racy read of active rq->engine
2020-03-10 14:24 ` [Intel-gfx] [PATCH v2] " Chris Wilson
@ 2020-03-10 15:29 ` Mika Kuoppala
0 siblings, 0 replies; 9+ messages in thread
From: Mika Kuoppala @ 2020-03-10 15:29 UTC (permalink / raw)
To: Chris Wilson, intel-gfx
Chris Wilson <chris@chris-wilson.co.uk> writes:
> As a virtual engine may change the rq->engine to point to the active
> request in flight, we need to warn the compiler that an active request's
> engine is volatile.
>
> [ 95.017686] write (marked) to 0xffff8881e8386b10 of 8 bytes by interrupt on cpu 2:
> [ 95.018123] execlists_dequeue+0x762/0x2150 [i915]
> [ 95.018539] __execlists_submission_tasklet+0x48/0x60 [i915]
> [ 95.018955] execlists_submission_tasklet+0xd3/0x170 [i915]
> [ 95.018986] tasklet_action_common.isra.0+0x42/0xa0
> [ 95.019016] __do_softirq+0xd7/0x2cd
> [ 95.019043] irq_exit+0xbe/0xe0
> [ 95.019068] irq_work_interrupt+0xf/0x20
> [ 95.019491] i915_request_retire+0x2c5/0x670 [i915]
> [ 95.019937] retire_requests+0xa1/0xf0 [i915]
> [ 95.020348] engine_retire+0xa1/0xe0 [i915]
> [ 95.020376] process_one_work+0x3b1/0x690
> [ 95.020403] worker_thread+0x80/0x670
> [ 95.020429] kthread+0x19a/0x1e0
> [ 95.020454] ret_from_fork+0x1f/0x30
> [ 95.020476]
> [ 95.020498] read to 0xffff8881e8386b10 of 8 bytes by task 8909 on cpu 3:
> [ 95.020918] __i915_request_commit+0x177/0x220 [i915]
> [ 95.021329] i915_gem_do_execbuffer+0x38c4/0x4e50 [i915]
> [ 95.021750] i915_gem_execbuffer2_ioctl+0x2c3/0x580 [i915]
> [ 95.021784] drm_ioctl_kernel+0xe4/0x120
> [ 95.021809] drm_ioctl+0x297/0x4c7
> [ 95.021832] ksys_ioctl+0x89/0xb0
> [ 95.021865] __x64_sys_ioctl+0x42/0x60
> [ 95.021901] do_syscall_64+0x6e/0x2c0
> [ 95.021927] entry_SYSCALL_64_after_hwframe+0x44/0xa9
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/i915_request.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_request.c b/drivers/gpu/drm/i915/i915_request.c
> index 74169671afb5..c0df71d7d0ff 100644
> --- a/drivers/gpu/drm/i915/i915_request.c
> +++ b/drivers/gpu/drm/i915/i915_request.c
> @@ -977,6 +977,8 @@ emit_semaphore_wait(struct i915_request *to,
> struct i915_request *from,
> gfp_t gfp)
> {
> + const intel_engine_mask_t mask = READ_ONCE(from->engine)->mask;
> +
> if (!intel_context_use_semaphores(to->context))
> goto await_fence;
>
> @@ -984,7 +986,7 @@ emit_semaphore_wait(struct i915_request *to,
> goto await_fence;
>
> /* Just emit the first semaphore we see as request space is limited. */
> - if (already_busywaiting(to) & from->engine->mask)
> + if (already_busywaiting(to) & mask)
> goto await_fence;
>
> if (i915_request_await_start(to, from) < 0)
> @@ -997,7 +999,7 @@ emit_semaphore_wait(struct i915_request *to,
> if (__emit_semaphore_wait(to, from, from->fence.seqno))
> goto await_fence;
>
> - to->sched.semaphores |= from->engine->mask;
> + to->sched.semaphores |= mask;
> to->sched.flags |= I915_SCHED_HAS_SEMAPHORE_CHAIN;
> return 0;
>
> @@ -1338,7 +1340,7 @@ __i915_request_add_to_timeline(struct i915_request *rq)
> i915_seqno_passed(prev->fence.seqno,
> rq->fence.seqno));
>
> - if (is_power_of_2(prev->engine->mask | rq->engine->mask))
> + if (is_power_of_2(READ_ONCE(prev->engine)->mask | rq->engine->mask))
> i915_sw_fence_await_sw_fence(&rq->submit,
> &prev->submit,
> &rq->submitq);
> --
> 2.20.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Intel-gfx] [PATCH 3/3] drm/i915/execlists: Mark up data-races in virtual engines
2020-03-10 14:13 ` [Intel-gfx] [PATCH 3/3] drm/i915/execlists: Mark up data-races in virtual engines Chris Wilson
@ 2020-03-10 15:35 ` Mika Kuoppala
0 siblings, 0 replies; 9+ messages in thread
From: Mika Kuoppala @ 2020-03-10 15:35 UTC (permalink / raw)
To: Chris Wilson, intel-gfx
Chris Wilson <chris@chris-wilson.co.uk> writes:
> The virtual engine passes tokens back and forth to its backing physical
> engines.
>
> [ 57.372993] BUG: KCSAN: data-race in execlists_dequeue [i915] / virtual_submission_tasklet [i915]
> [ 57.373012]
> [ 57.373023] write to 0xffff8881f47324c0 of 4 bytes by interrupt on cpu 2:
> [ 57.373241] execlists_dequeue+0x6fa/0x2150 [i915]
> [ 57.373458] __execlists_submission_tasklet+0x48/0x60 [i915]
> [ 57.373677] execlists_submission_tasklet+0xd3/0x170 [i915]
> [ 57.373694] tasklet_action_common.isra.0+0x42/0xa0
> [ 57.373709] __do_softirq+0xd7/0x2cd
> [ 57.373723] irq_exit+0xbe/0xe0
> [ 57.373735] do_IRQ+0x51/0x100
> [ 57.373748] ret_from_intr+0x0/0x1c
> [ 57.373963] engine_retire+0x89/0xe0 [i915]
> [ 57.373977] process_one_work+0x3b1/0x690
> [ 57.373990] worker_thread+0x80/0x670
> [ 57.374004] kthread+0x19a/0x1e0
> [ 57.374017] ret_from_fork+0x1f/0x30
> [ 57.374027]
> [ 57.374038] read to 0xffff8881f47324c0 of 4 bytes by interrupt on cpu 3:
> [ 57.374256] virtual_submission_tasklet+0x27/0x5a0 [i915]
> [ 57.374273] tasklet_action_common.isra.0+0x42/0xa0
> [ 57.374288] __do_softirq+0xd7/0x2cd
> [ 57.374302] run_ksoftirqd+0x15/0x20
> [ 57.374315] smpboot_thread_fn+0x1ab/0x300
> [ 57.374329] kthread+0x19a/0x1e0
> [ 57.374342] ret_from_fork+0x1f/0x30
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/gt/intel_lrc.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c
> index 15b81be08fcc..8122f4bc2e90 100644
> --- a/drivers/gpu/drm/i915/gt/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
> @@ -1004,7 +1004,7 @@ __unwind_incomplete_requests(struct intel_engine_cs *engine)
> i915_request_cancel_breadcrumb(rq);
> spin_unlock(&rq->lock);
> }
> - rq->engine = owner;
> + WRITE_ONCE(rq->engine, owner);
> owner->submit_request(rq);
> active = NULL;
> }
> @@ -2023,13 +2023,14 @@ static void execlists_dequeue(struct intel_engine_cs *engine)
> "",
> yesno(engine != ve->siblings[0]));
>
> - ve->request = NULL;
> - ve->base.execlists.queue_priority_hint = INT_MIN;
> + WRITE_ONCE(ve->request, NULL);
> + WRITE_ONCE(ve->base.execlists.queue_priority_hint,
> + INT_MIN);
> rb_erase_cached(rb, &execlists->virtual);
> RB_CLEAR_NODE(rb);
>
> GEM_BUG_ON(!(rq->execution_mask & engine->mask));
> - rq->engine = engine;
> + WRITE_ONCE(rq->engine, engine);
>
> if (engine != ve->siblings[0]) {
> u32 *regs = ve->context.lrc_reg_state;
> @@ -4934,7 +4935,7 @@ static intel_engine_mask_t virtual_submission_mask(struct virtual_engine *ve)
> static void virtual_submission_tasklet(unsigned long data)
> {
> struct virtual_engine * const ve = (struct virtual_engine *)data;
> - const int prio = ve->base.execlists.queue_priority_hint;
> + const int prio = READ_ONCE(ve->base.execlists.queue_priority_hint);
> intel_engine_mask_t mask;
> unsigned int n;
>
> --
> 2.20.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight (rev2)
2020-03-10 14:13 [Intel-gfx] [PATCH 1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight Chris Wilson
` (2 preceding siblings ...)
2020-03-10 15:01 ` [Intel-gfx] [PATCH 1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight Mika Kuoppala
@ 2020-03-11 8:40 ` Patchwork
2020-03-11 14:33 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
4 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2020-03-11 8:40 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: series starting with [1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight (rev2)
URL : https://patchwork.freedesktop.org/series/74520/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_8110 -> Patchwork_16906
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/index.html
Known issues
------------
Here are the changes found in Patchwork_16906 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_suspend@basic-s4-devices:
- fi-tgl-y: [PASS][1] -> [FAIL][2] ([CI#94])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/fi-tgl-y/igt@gem_exec_suspend@basic-s4-devices.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/fi-tgl-y/igt@gem_exec_suspend@basic-s4-devices.html
* igt@kms_addfb_basic@bad-pitch-63:
- fi-tgl-y: [PASS][3] -> [DMESG-WARN][4] ([CI#94] / [i915#402])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/fi-tgl-y/igt@kms_addfb_basic@bad-pitch-63.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/fi-tgl-y/igt@kms_addfb_basic@bad-pitch-63.html
* igt@kms_chamelium@dp-crc-fast:
- fi-kbl-7500u: [PASS][5] -> [FAIL][6] ([fdo#109635] / [i915#262])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: [PASS][7] -> [FAIL][8] ([fdo#111096] / [i915#323])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
[CI#94]: https://gitlab.freedesktop.org/gfx-ci/i915-infra/issues/94
[fdo#109635]: https://bugs.freedesktop.org/show_bug.cgi?id=109635
[fdo#111096]: https://bugs.freedesktop.org/show_bug.cgi?id=111096
[i915#262]: https://gitlab.freedesktop.org/drm/intel/issues/262
[i915#323]: https://gitlab.freedesktop.org/drm/intel/issues/323
[i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402
Participating hosts (46 -> 44)
------------------------------
Additional (5): fi-skl-6770hq fi-ilk-650 fi-snb-2520m fi-kbl-x1275 fi-bsw-nick
Missing (7): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-byt-clapper fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8110 -> Patchwork_16906
CI-20190529: 20190529
CI_DRM_8110: 34de7240602b03b0406eac5fc5b4fc6f28c0fe57 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5504: d6788bf0404f76b66170e18eb26c85004b5ccb25 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16906: 4492397e79573b2f691f0ffc03266eadc74a961e @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
4492397e7957 drm/i915/execlists: Mark up data-races in virtual engines
46542f5f4f9c drm/i915: Mark up racy read of active rq->engine
fd81036aa397 drm/i915/gt: Mark up racy reads for intel_context.inflight
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Intel-gfx] ✓ Fi.CI.IGT: success for series starting with [1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight (rev2)
2020-03-10 14:13 [Intel-gfx] [PATCH 1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight Chris Wilson
` (3 preceding siblings ...)
2020-03-11 8:40 ` [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight (rev2) Patchwork
@ 2020-03-11 14:33 ` Patchwork
4 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2020-03-11 14:33 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: series starting with [1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight (rev2)
URL : https://patchwork.freedesktop.org/series/74520/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_8110_full -> Patchwork_16906_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
New tests
---------
New tests have been introduced between CI_DRM_8110_full and Patchwork_16906_full:
### New IGT tests (6) ###
* igt@gem_render_copy@y-tiled-ccs-to-yf-tiled:
- Statuses : 6 pass(s) 2 skip(s)
- Exec time: [0.0, 0.70] s
* igt@gem_render_copy@yf-tiled:
- Statuses : 6 pass(s)
- Exec time: [0.07, 0.69] s
* igt@gem_render_copy@yf-tiled-ccs-to-linear:
- Statuses : 6 pass(s)
- Exec time: [0.07, 0.71] s
* igt@gem_render_copy@yf-tiled-ccs-to-x-tiled:
- Statuses : 6 pass(s) 2 skip(s)
- Exec time: [0.0, 0.66] s
* igt@gem_render_copy@yf-tiled-ccs-to-y-tiled:
- Statuses : 6 pass(s) 2 skip(s)
- Exec time: [0.0, 0.70] s
* igt@gem_render_copy@yf-tiled-ccs-to-yf-tiled:
- Statuses : 6 pass(s) 2 skip(s)
- Exec time: [0.0, 0.73] s
Known issues
------------
Here are the changes found in Patchwork_16906_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_busy@busy-vcs1:
- shard-iclb: [PASS][1] -> [SKIP][2] ([fdo#112080]) +14 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb2/igt@gem_busy@busy-vcs1.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb3/igt@gem_busy@busy-vcs1.html
* igt@gem_ctx_persistence@close-replace-race:
- shard-tglb: [PASS][3] -> [INCOMPLETE][4] ([i915#1402])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-tglb6/igt@gem_ctx_persistence@close-replace-race.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-tglb6/igt@gem_ctx_persistence@close-replace-race.html
- shard-kbl: [PASS][5] -> [INCOMPLETE][6] ([i915#1402])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-kbl6/igt@gem_ctx_persistence@close-replace-race.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-kbl1/igt@gem_ctx_persistence@close-replace-race.html
* igt@gem_exec_schedule@implicit-read-write-bsd1:
- shard-iclb: [PASS][7] -> [SKIP][8] ([fdo#109276] / [i915#677])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb2/igt@gem_exec_schedule@implicit-read-write-bsd1.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb7/igt@gem_exec_schedule@implicit-read-write-bsd1.html
* igt@gem_exec_schedule@in-order-bsd:
- shard-iclb: [PASS][9] -> [SKIP][10] ([fdo#112146]) +4 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb8/igt@gem_exec_schedule@in-order-bsd.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb1/igt@gem_exec_schedule@in-order-bsd.html
* igt@gem_exec_schedule@pi-shared-iova-bsd:
- shard-iclb: [PASS][11] -> [SKIP][12] ([i915#677])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb3/igt@gem_exec_schedule@pi-shared-iova-bsd.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb4/igt@gem_exec_schedule@pi-shared-iova-bsd.html
* igt@gem_exec_schedule@promotion-bsd1:
- shard-iclb: [PASS][13] -> [SKIP][14] ([fdo#109276]) +20 similar issues
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb4/igt@gem_exec_schedule@promotion-bsd1.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb5/igt@gem_exec_schedule@promotion-bsd1.html
* igt@gem_exec_whisper@basic-queues-priority:
- shard-glk: [PASS][15] -> [DMESG-WARN][16] ([i915#118] / [i915#95])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-glk1/igt@gem_exec_whisper@basic-queues-priority.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-glk4/igt@gem_exec_whisper@basic-queues-priority.html
* igt@gem_ppgtt@flink-and-close-vma-leak:
- shard-apl: [PASS][17] -> [FAIL][18] ([i915#644])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-apl2/igt@gem_ppgtt@flink-and-close-vma-leak.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-apl4/igt@gem_ppgtt@flink-and-close-vma-leak.html
* igt@gen9_exec_parse@allowed-all:
- shard-glk: [PASS][19] -> [DMESG-WARN][20] ([i915#716])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-glk2/igt@gen9_exec_parse@allowed-all.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-glk7/igt@gen9_exec_parse@allowed-all.html
* igt@i915_pm_rps@waitboost:
- shard-iclb: [PASS][21] -> [FAIL][22] ([i915#413])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb7/igt@i915_pm_rps@waitboost.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb7/igt@i915_pm_rps@waitboost.html
* igt@i915_suspend@fence-restore-tiled2untiled:
- shard-apl: [PASS][23] -> [DMESG-WARN][24] ([i915#180]) +3 similar issues
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-apl6/igt@i915_suspend@fence-restore-tiled2untiled.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-apl1/igt@i915_suspend@fence-restore-tiled2untiled.html
* igt@kms_cursor_crc@pipe-a-cursor-dpms:
- shard-skl: [PASS][25] -> [FAIL][26] ([i915#54])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-skl9/igt@kms_cursor_crc@pipe-a-cursor-dpms.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-skl4/igt@kms_cursor_crc@pipe-a-cursor-dpms.html
* igt@kms_cursor_crc@pipe-c-cursor-suspend:
- shard-kbl: [PASS][27] -> [DMESG-WARN][28] ([i915#180]) +3 similar issues
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-kbl2/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-kbl4/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
* igt@kms_flip_tiling@flip-to-yf-tiled:
- shard-skl: [PASS][29] -> [FAIL][30] ([fdo#107931] / [i915#167])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-skl8/igt@kms_flip_tiling@flip-to-yf-tiled.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-skl6/igt@kms_flip_tiling@flip-to-yf-tiled.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-pwrite:
- shard-glk: [PASS][31] -> [FAIL][32] ([i915#49])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-glk5/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-pwrite.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-glk1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-pwrite.html
* igt@kms_hdr@bpc-switch-suspend:
- shard-skl: [PASS][33] -> [FAIL][34] ([i915#1188])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-skl3/igt@kms_hdr@bpc-switch-suspend.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-skl5/igt@kms_hdr@bpc-switch-suspend.html
* igt@kms_plane_alpha_blend@pipe-a-coverage-7efc:
- shard-skl: [PASS][35] -> [FAIL][36] ([fdo#108145]) +1 similar issue
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-skl9/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-skl4/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html
* igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
- shard-skl: [PASS][37] -> [FAIL][38] ([fdo#108145] / [i915#265])
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-skl2/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-skl9/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
* igt@kms_plane_lowres@pipe-a-tiling-x:
- shard-glk: [PASS][39] -> [FAIL][40] ([i915#899])
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-glk7/igt@kms_plane_lowres@pipe-a-tiling-x.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-glk1/igt@kms_plane_lowres@pipe-a-tiling-x.html
* igt@kms_psr@psr2_primary_mmap_cpu:
- shard-iclb: [PASS][41] -> [SKIP][42] ([fdo#109441]) +1 similar issue
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb2/igt@kms_psr@psr2_primary_mmap_cpu.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb3/igt@kms_psr@psr2_primary_mmap_cpu.html
* igt@kms_setmode@basic:
- shard-kbl: [PASS][43] -> [FAIL][44] ([i915#31])
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-kbl2/igt@kms_setmode@basic.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-kbl3/igt@kms_setmode@basic.html
#### Possible fixes ####
* igt@gem_ctx_shared@exec-single-timeline-bsd:
- shard-iclb: [SKIP][45] ([fdo#110841]) -> [PASS][46]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb1/igt@gem_ctx_shared@exec-single-timeline-bsd.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb8/igt@gem_ctx_shared@exec-single-timeline-bsd.html
* igt@gem_exec_balancer@smoke:
- shard-iclb: [SKIP][47] ([fdo#110854]) -> [PASS][48]
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb5/igt@gem_exec_balancer@smoke.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb2/igt@gem_exec_balancer@smoke.html
* igt@gem_exec_schedule@implicit-both-bsd1:
- shard-iclb: [SKIP][49] ([fdo#109276] / [i915#677]) -> [PASS][50] +3 similar issues
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb3/igt@gem_exec_schedule@implicit-both-bsd1.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb4/igt@gem_exec_schedule@implicit-both-bsd1.html
* igt@gem_exec_schedule@pi-distinct-iova-bsd:
- shard-iclb: [SKIP][51] ([i915#677]) -> [PASS][52] +1 similar issue
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb4/igt@gem_exec_schedule@pi-distinct-iova-bsd.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb6/igt@gem_exec_schedule@pi-distinct-iova-bsd.html
* igt@gem_exec_schedule@preemptive-hang-bsd:
- shard-iclb: [SKIP][53] ([fdo#112146]) -> [PASS][54] +10 similar issues
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb4/igt@gem_exec_schedule@preemptive-hang-bsd.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb6/igt@gem_exec_schedule@preemptive-hang-bsd.html
* igt@gem_exec_whisper@basic-fds-priority:
- shard-glk: [DMESG-WARN][55] ([i915#118] / [i915#95]) -> [PASS][56]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-glk5/igt@gem_exec_whisper@basic-fds-priority.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-glk1/igt@gem_exec_whisper@basic-fds-priority.html
* igt@gem_ppgtt@flink-and-close-vma-leak:
- shard-glk: [FAIL][57] ([i915#644]) -> [PASS][58]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-glk7/igt@gem_ppgtt@flink-and-close-vma-leak.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-glk8/igt@gem_ppgtt@flink-and-close-vma-leak.html
* igt@gem_softpin@noreloc-s3:
- shard-skl: [INCOMPLETE][59] ([i915#69]) -> [PASS][60]
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-skl1/igt@gem_softpin@noreloc-s3.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-skl2/igt@gem_softpin@noreloc-s3.html
* igt@gem_workarounds@suspend-resume-context:
- shard-apl: [DMESG-WARN][61] ([i915#180]) -> [PASS][62] +2 similar issues
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-apl4/igt@gem_workarounds@suspend-resume-context.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-apl4/igt@gem_workarounds@suspend-resume-context.html
* igt@kms_cursor_crc@pipe-b-cursor-64x64-offscreen:
- shard-apl: [FAIL][63] ([i915#54]) -> [PASS][64]
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-apl2/igt@kms_cursor_crc@pipe-b-cursor-64x64-offscreen.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-apl7/igt@kms_cursor_crc@pipe-b-cursor-64x64-offscreen.html
* igt@kms_flip@flip-vs-expired-vblank:
- shard-skl: [FAIL][65] ([i915#79]) -> [PASS][66] +1 similar issue
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-skl3/igt@kms_flip@flip-vs-expired-vblank.html
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-skl5/igt@kms_flip@flip-vs-expired-vblank.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-skl: [INCOMPLETE][67] ([i915#221]) -> [PASS][68]
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-skl4/igt@kms_flip@flip-vs-suspend-interruptible.html
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-skl4/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_flip@plain-flip-fb-recreate-interruptible:
- shard-skl: [FAIL][69] ([i915#34]) -> [PASS][70]
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-skl10/igt@kms_flip@plain-flip-fb-recreate-interruptible.html
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-skl10/igt@kms_flip@plain-flip-fb-recreate-interruptible.html
* igt@kms_hdr@bpc-switch-dpms:
- shard-skl: [FAIL][71] ([i915#1188]) -> [PASS][72]
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-skl4/igt@kms_hdr@bpc-switch-dpms.html
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-skl10/igt@kms_hdr@bpc-switch-dpms.html
* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min:
- shard-skl: [FAIL][73] ([fdo#108145]) -> [PASS][74]
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-skl10/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-skl3/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
* igt@kms_psr2_su@page_flip:
- shard-iclb: [SKIP][75] ([fdo#109642] / [fdo#111068]) -> [PASS][76]
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb5/igt@kms_psr2_su@page_flip.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb2/igt@kms_psr2_su@page_flip.html
* igt@kms_psr@psr2_no_drrs:
- shard-iclb: [SKIP][77] ([fdo#109441]) -> [PASS][78] +1 similar issue
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb1/igt@kms_psr@psr2_no_drrs.html
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb2/igt@kms_psr@psr2_no_drrs.html
* igt@kms_psr@psr2_primary_mmap_gtt:
- shard-tglb: [INCOMPLETE][79] -> [PASS][80]
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-tglb6/igt@kms_psr@psr2_primary_mmap_gtt.html
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-tglb8/igt@kms_psr@psr2_primary_mmap_gtt.html
* igt@kms_vblank@pipe-a-ts-continuation-suspend:
- shard-kbl: [DMESG-WARN][81] ([i915#180]) -> [PASS][82] +5 similar issues
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-kbl6/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-kbl4/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
* igt@perf_pmu@busy-no-semaphores-vcs1:
- shard-iclb: [SKIP][83] ([fdo#112080]) -> [PASS][84] +17 similar issues
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb5/igt@perf_pmu@busy-no-semaphores-vcs1.html
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb1/igt@perf_pmu@busy-no-semaphores-vcs1.html
* igt@prime_busy@hang-bsd2:
- shard-iclb: [SKIP][85] ([fdo#109276]) -> [PASS][86] +21 similar issues
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb5/igt@prime_busy@hang-bsd2.html
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb1/igt@prime_busy@hang-bsd2.html
#### Warnings ####
* igt@i915_pm_dc@dc3co-vpb-simulation:
- shard-iclb: [SKIP][87] ([i915#658]) -> [SKIP][88] ([i915#588])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-iclb1/igt@i915_pm_dc@dc3co-vpb-simulation.html
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-iclb2/igt@i915_pm_dc@dc3co-vpb-simulation.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- shard-kbl: [INCOMPLETE][89] ([i915#155]) -> [DMESG-WARN][90] ([i915#180])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-kbl3/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-kbl7/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
* igt@runner@aborted:
- shard-kbl: [FAIL][91] ([i915#92]) -> ([FAIL][92], [FAIL][93]) ([i915#1389] / [i915#1402] / [i915#92])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8110/shard-kbl1/igt@runner@aborted.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-kbl1/igt@runner@aborted.html
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/shard-kbl1/igt@runner@aborted.html
[fdo#107931]: https://bugs.freedesktop.org/show_bug.cgi?id=107931
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#110841]: https://bugs.freedesktop.org/show_bug.cgi?id=110841
[fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080
[fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146
[i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
[i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
[i915#1389]: https://gitlab.freedesktop.org/drm/intel/issues/1389
[i915#1402]: https://gitlab.freedesktop.org/drm/intel/issues/1402
[i915#155]: https://gitlab.freedesktop.org/drm/intel/issues/155
[i915#167]: https://gitlab.freedesktop.org/drm/intel/issues/167
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#221]: https://gitlab.freedesktop.org/drm/intel/issues/221
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31
[i915#34]: https://gitlab.freedesktop.org/drm/intel/issues/34
[i915#413]: https://gitlab.freedesktop.org/drm/intel/issues/413
[i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49
[i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54
[i915#588]: https://gitlab.freedesktop.org/drm/intel/issues/588
[i915#644]: https://gitlab.freedesktop.org/drm/intel/issues/644
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677
[i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69
[i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
[i915#899]: https://gitlab.freedesktop.org/drm/intel/issues/899
[i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92
[i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8110 -> Patchwork_16906
CI-20190529: 20190529
CI_DRM_8110: 34de7240602b03b0406eac5fc5b4fc6f28c0fe57 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5504: d6788bf0404f76b66170e18eb26c85004b5ccb25 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16906: 4492397e79573b2f691f0ffc03266eadc74a961e @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16906/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-03-11 14:33 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-10 14:13 [Intel-gfx] [PATCH 1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight Chris Wilson
2020-03-10 14:13 ` [Intel-gfx] [PATCH 2/3] drm/i915: Mark up racy read of active rq->engine Chris Wilson
2020-03-10 14:24 ` [Intel-gfx] [PATCH v2] " Chris Wilson
2020-03-10 15:29 ` Mika Kuoppala
2020-03-10 14:13 ` [Intel-gfx] [PATCH 3/3] drm/i915/execlists: Mark up data-races in virtual engines Chris Wilson
2020-03-10 15:35 ` Mika Kuoppala
2020-03-10 15:01 ` [Intel-gfx] [PATCH 1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight Mika Kuoppala
2020-03-11 8:40 ` [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [1/3] drm/i915/gt: Mark up racy reads for intel_context.inflight (rev2) Patchwork
2020-03-11 14:33 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.