* [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 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 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
* [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
* 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
* 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
* [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 a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).