* [Intel-gfx] [PATCH] drm/i915/gt: Expand bad CS completion event debug @ 2020-02-11 23:09 Chris Wilson 2020-02-12 12:44 ` Mika Kuoppala ` (3 more replies) 0 siblings, 4 replies; 5+ messages in thread From: Chris Wilson @ 2020-02-11 23:09 UTC (permalink / raw) To: intel-gfx Show the ring/request/context state if we see what we believe is an early CS completion. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> --- drivers/gpu/drm/i915/gt/intel_context.c | 3 ++- drivers/gpu/drm/i915/gt/intel_lrc.c | 31 +++++++++++++++++++++++-- 2 files changed, 31 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/intel_context.c b/drivers/gpu/drm/i915/gt/intel_context.c index 57e8a051ddc2..e4f89341d17c 100644 --- a/drivers/gpu/drm/i915/gt/intel_context.c +++ b/drivers/gpu/drm/i915/gt/intel_context.c @@ -116,7 +116,8 @@ int __intel_context_do_pin(struct intel_context *ce) if (unlikely(err)) goto err_active; - CE_TRACE(ce, "pin ring:{head:%04x, tail:%04x}\n", + CE_TRACE(ce, "pin ring:{start:%08x, head:%04x, tail:%04x}\n", + i915_ggtt_offset(ce->ring->vma), ce->ring->head, ce->ring->tail); smp_mb__before_atomic(); /* flush pin before it is visible */ diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c index 902d440ef07d..1e3db37dea2b 100644 --- a/drivers/gpu/drm/i915/gt/intel_lrc.c +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c @@ -2328,8 +2328,35 @@ static void process_csb(struct intel_engine_cs *engine) * coherent (visible from the CPU) before the * user interrupt and CSB is processed. */ - GEM_BUG_ON(!i915_request_completed(*execlists->active) && - !reset_in_progress(execlists)); + if (GEM_SHOW_DEBUG() && + !i915_request_completed(*execlists->active) && + !reset_in_progress(execlists)) { + struct i915_request *rq = *execlists->active; + const u32 *regs = rq->context->lrc_reg_state; + + ENGINE_TRACE(engine, + "ring:{start:0x%08x, head:%04x, tail:%04x, ctl:%08x, mode:%08x}\n", + ENGINE_READ(engine, RING_START), + ENGINE_READ(engine, RING_HEAD) & HEAD_ADDR, + ENGINE_READ(engine, RING_TAIL) & TAIL_ADDR, + ENGINE_READ(engine, RING_CTL), + ENGINE_READ(engine, RING_MI_MODE)); + ENGINE_TRACE(engine, + "rq:{start:%08x, head:%04x, tail:%04x, seqno:%llx:%d, hwsp:%d}, ", + i915_ggtt_offset(rq->ring->vma), + rq->head, rq->tail, + rq->fence.context, + lower_32_bits(rq->fence.seqno), + hwsp_seqno(rq)); + ENGINE_TRACE(engine, + "ctx:{start:%08x, head:%04x, tail:%04x}, ", + regs[CTX_RING_START], + regs[CTX_RING_HEAD], + regs[CTX_RING_TAIL]); + + GEM_BUG_ON("context completed before request"); + } + execlists_schedule_out(*execlists->active++); GEM_BUG_ON(execlists->active - execlists->inflight > -- 2.25.0 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915/gt: Expand bad CS completion event debug 2020-02-11 23:09 [Intel-gfx] [PATCH] drm/i915/gt: Expand bad CS completion event debug Chris Wilson @ 2020-02-12 12:44 ` Mika Kuoppala 2020-02-12 20:29 ` [Intel-gfx] ✓ Fi.CI.BAT: success for " Patchwork ` (2 subsequent siblings) 3 siblings, 0 replies; 5+ messages in thread From: Mika Kuoppala @ 2020-02-12 12:44 UTC (permalink / raw) To: Chris Wilson, intel-gfx Chris Wilson <chris@chris-wilson.co.uk> writes: > Show the ring/request/context state if we see what we believe is an > early CS completion. > > 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.c | 3 ++- > drivers/gpu/drm/i915/gt/intel_lrc.c | 31 +++++++++++++++++++++++-- > 2 files changed, 31 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gt/intel_context.c b/drivers/gpu/drm/i915/gt/intel_context.c > index 57e8a051ddc2..e4f89341d17c 100644 > --- a/drivers/gpu/drm/i915/gt/intel_context.c > +++ b/drivers/gpu/drm/i915/gt/intel_context.c > @@ -116,7 +116,8 @@ int __intel_context_do_pin(struct intel_context *ce) > if (unlikely(err)) > goto err_active; > > - CE_TRACE(ce, "pin ring:{head:%04x, tail:%04x}\n", > + CE_TRACE(ce, "pin ring:{start:%08x, head:%04x, tail:%04x}\n", > + i915_ggtt_offset(ce->ring->vma), > ce->ring->head, ce->ring->tail); > > smp_mb__before_atomic(); /* flush pin before it is visible */ > diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c > index 902d440ef07d..1e3db37dea2b 100644 > --- a/drivers/gpu/drm/i915/gt/intel_lrc.c > +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c > @@ -2328,8 +2328,35 @@ static void process_csb(struct intel_engine_cs *engine) > * coherent (visible from the CPU) before the > * user interrupt and CSB is processed. > */ > - GEM_BUG_ON(!i915_request_completed(*execlists->active) && > - !reset_in_progress(execlists)); > + if (GEM_SHOW_DEBUG() && > + !i915_request_completed(*execlists->active) && > + !reset_in_progress(execlists)) { > + struct i915_request *rq = *execlists->active; > + const u32 *regs = rq->context->lrc_reg_state; > + > + ENGINE_TRACE(engine, > + "ring:{start:0x%08x, head:%04x, tail:%04x, ctl:%08x, mode:%08x}\n", > + ENGINE_READ(engine, RING_START), > + ENGINE_READ(engine, RING_HEAD) & HEAD_ADDR, > + ENGINE_READ(engine, RING_TAIL) & TAIL_ADDR, > + ENGINE_READ(engine, RING_CTL), > + ENGINE_READ(engine, RING_MI_MODE)); > + ENGINE_TRACE(engine, > + "rq:{start:%08x, head:%04x, tail:%04x, seqno:%llx:%d, hwsp:%d}, ", > + i915_ggtt_offset(rq->ring->vma), > + rq->head, rq->tail, > + rq->fence.context, > + lower_32_bits(rq->fence.seqno), > + hwsp_seqno(rq)); > + ENGINE_TRACE(engine, > + "ctx:{start:%08x, head:%04x, tail:%04x}, ", > + regs[CTX_RING_START], > + regs[CTX_RING_HEAD], > + regs[CTX_RING_TAIL]); > + > + GEM_BUG_ON("context completed before request"); > + } > + > execlists_schedule_out(*execlists->active++); > > GEM_BUG_ON(execlists->active - execlists->inflight > > -- > 2.25.0 > > _______________________________________________ > 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] 5+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/gt: Expand bad CS completion event debug 2020-02-11 23:09 [Intel-gfx] [PATCH] drm/i915/gt: Expand bad CS completion event debug Chris Wilson 2020-02-12 12:44 ` Mika Kuoppala @ 2020-02-12 20:29 ` Patchwork 2020-02-14 23:16 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork 2020-02-20 14:54 ` [Intel-gfx] [PATCH] " kbuild test robot 3 siblings, 0 replies; 5+ messages in thread From: Patchwork @ 2020-02-12 20:29 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx == Series Details == Series: drm/i915/gt: Expand bad CS completion event debug URL : https://patchwork.freedesktop.org/series/73335/ State : success == Summary == CI Bug Log - changes from CI_DRM_7924 -> Patchwork_16532 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/index.html Known issues ------------ Here are the changes found in Patchwork_16532 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_exec_parallel@contexts: - fi-byt-n2820: [PASS][1] -> [FAIL][2] ([i915#694]) +1 similar issue [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/fi-byt-n2820/igt@gem_exec_parallel@contexts.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/fi-byt-n2820/igt@gem_exec_parallel@contexts.html * igt@i915_pm_rpm@basic-pci-d3-state: - fi-icl-dsi: [PASS][3] -> [INCOMPLETE][4] ([i915#189]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/fi-icl-dsi/igt@i915_pm_rpm@basic-pci-d3-state.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/fi-icl-dsi/igt@i915_pm_rpm@basic-pci-d3-state.html * igt@i915_selftest@live_gem_contexts: - fi-byt-n2820: [PASS][5] -> [DMESG-FAIL][6] ([i915#1052]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/fi-byt-n2820/igt@i915_selftest@live_gem_contexts.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/fi-byt-n2820/igt@i915_selftest@live_gem_contexts.html #### Possible fixes #### * igt@i915_pm_rpm@module-reload: - fi-skl-6770hq: [FAIL][7] ([i915#178]) -> [PASS][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/fi-skl-6770hq/igt@i915_pm_rpm@module-reload.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/fi-skl-6770hq/igt@i915_pm_rpm@module-reload.html * igt@i915_selftest@live_gtt: - fi-icl-u2: [TIMEOUT][9] ([fdo#112271]) -> [PASS][10] [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/fi-icl-u2/igt@i915_selftest@live_gtt.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/fi-icl-u2/igt@i915_selftest@live_gtt.html #### Warnings #### * igt@gem_exec_parallel@fds: - fi-byt-n2820: [TIMEOUT][11] ([fdo#112271]) -> [FAIL][12] ([i915#694]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/fi-byt-n2820/igt@gem_exec_parallel@fds.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/fi-byt-n2820/igt@gem_exec_parallel@fds.html [fdo#112271]: https://bugs.freedesktop.org/show_bug.cgi?id=112271 [i915#1052]: https://gitlab.freedesktop.org/drm/intel/issues/1052 [i915#178]: https://gitlab.freedesktop.org/drm/intel/issues/178 [i915#189]: https://gitlab.freedesktop.org/drm/intel/issues/189 [i915#694]: https://gitlab.freedesktop.org/drm/intel/issues/694 Participating hosts (43 -> 39) ------------------------------ Additional (7): fi-hsw-4770 fi-kbl-x1275 fi-gdg-551 fi-bsw-kefka fi-kbl-7560u fi-skl-6700k2 fi-kbl-r Missing (11): fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ilk-650 fi-kbl-7500u fi-ctg-p8600 fi-ivb-3770 fi-bdw-samus fi-byt-clapper fi-skl-6600u fi-snb-2600 Build changes ------------- * CI: CI-20190529 -> None * Linux: CI_DRM_7924 -> Patchwork_16532 CI-20190529: 20190529 CI_DRM_7924: d4ea682de87f4e4378f34f0a196e8fa8983bd306 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5436: 00a64098aaae2ac3154841d76c7b034165380282 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_16532: 9c4c9a0806edc1aa9e49cb27935a2fbe11aa58d2 @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == 9c4c9a0806ed drm/i915/gt: Expand bad CS completion event debug == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/index.html _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 5+ messages in thread
* [Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/gt: Expand bad CS completion event debug 2020-02-11 23:09 [Intel-gfx] [PATCH] drm/i915/gt: Expand bad CS completion event debug Chris Wilson 2020-02-12 12:44 ` Mika Kuoppala 2020-02-12 20:29 ` [Intel-gfx] ✓ Fi.CI.BAT: success for " Patchwork @ 2020-02-14 23:16 ` Patchwork 2020-02-20 14:54 ` [Intel-gfx] [PATCH] " kbuild test robot 3 siblings, 0 replies; 5+ messages in thread From: Patchwork @ 2020-02-14 23:16 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx == Series Details == Series: drm/i915/gt: Expand bad CS completion event debug URL : https://patchwork.freedesktop.org/series/73335/ State : failure == Summary == CI Bug Log - changes from CI_DRM_7924_full -> Patchwork_16532_full ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with Patchwork_16532_full absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in Patchwork_16532_full, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI. Possible new issues ------------------- Here are the unknown changes that may have been introduced in Patchwork_16532_full: ### IGT changes ### #### Possible regressions #### * igt@i915_selftest@mock_timelines: - shard-iclb: [PASS][1] -> [INCOMPLETE][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb3/igt@i915_selftest@mock_timelines.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb8/igt@i915_selftest@mock_timelines.html - shard-skl: [PASS][3] -> [INCOMPLETE][4] [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-skl7/igt@i915_selftest@mock_timelines.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-skl10/igt@i915_selftest@mock_timelines.html - shard-tglb: [PASS][5] -> [INCOMPLETE][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-tglb2/igt@i915_selftest@mock_timelines.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-tglb8/igt@i915_selftest@mock_timelines.html * igt@runner@aborted: - shard-tglb: NOTRUN -> [FAIL][7] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-tglb8/igt@runner@aborted.html #### Suppressed #### The following results come from untrusted machines, tests, or statuses. They do not affect the overall result. * {igt@gem_ctx_persistence@legacy-engines-mixed-process@vebox}: - shard-skl: [PASS][8] -> [INCOMPLETE][9] [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-skl4/igt@gem_ctx_persistence@legacy-engines-mixed-process@vebox.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-skl5/igt@gem_ctx_persistence@legacy-engines-mixed-process@vebox.html Known issues ------------ Here are the changes found in Patchwork_16532_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_ctx_isolation@rcs0-s3: - shard-kbl: [PASS][10] -> [DMESG-WARN][11] ([i915#180]) +3 similar issues [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-kbl6/igt@gem_ctx_isolation@rcs0-s3.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-kbl4/igt@gem_ctx_isolation@rcs0-s3.html * igt@gem_ctx_shared@exec-shared-gtt-bsd2: - shard-iclb: [PASS][12] -> [SKIP][13] ([fdo#109276]) +7 similar issues [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb4/igt@gem_ctx_shared@exec-shared-gtt-bsd2.html [13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb6/igt@gem_ctx_shared@exec-shared-gtt-bsd2.html * igt@gem_ctx_shared@exec-single-timeline-bsd: - shard-iclb: [PASS][14] -> [SKIP][15] ([fdo#110841]) [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb5/igt@gem_ctx_shared@exec-single-timeline-bsd.html [15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb2/igt@gem_ctx_shared@exec-single-timeline-bsd.html * igt@gem_exec_balancer@hang: - shard-tglb: [PASS][16] -> [TIMEOUT][17] ([fdo#112271]) [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-tglb1/igt@gem_exec_balancer@hang.html [17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-tglb3/igt@gem_exec_balancer@hang.html * igt@gem_exec_capture@capture-bsd: - shard-iclb: [PASS][18] -> [SKIP][19] ([fdo#112146]) [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb5/igt@gem_exec_capture@capture-bsd.html [19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb2/igt@gem_exec_capture@capture-bsd.html * igt@gem_exec_parallel@vcs1-fds: - shard-iclb: [PASS][20] -> [SKIP][21] ([fdo#112080]) +1 similar issue [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb4/igt@gem_exec_parallel@vcs1-fds.html [21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb8/igt@gem_exec_parallel@vcs1-fds.html * igt@i915_pm_rpm@modeset-stress-extra-wait: - shard-hsw: [PASS][22] -> [INCOMPLETE][23] ([CI#80] / [i915#151] / [i915#61]) [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-hsw2/igt@i915_pm_rpm@modeset-stress-extra-wait.html [23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-hsw2/igt@i915_pm_rpm@modeset-stress-extra-wait.html * igt@i915_pm_rps@reset: - shard-iclb: [PASS][24] -> [FAIL][25] ([i915#413]) [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb4/igt@i915_pm_rps@reset.html [25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb8/igt@i915_pm_rps@reset.html * igt@i915_selftest@mock_timelines: - shard-glk: [PASS][26] -> [INCOMPLETE][27] ([i915#58] / [k.org#198133]) [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-glk3/igt@i915_selftest@mock_timelines.html [27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-glk3/igt@i915_selftest@mock_timelines.html - shard-hsw: [PASS][28] -> [INCOMPLETE][29] ([i915#61]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-hsw1/igt@i915_selftest@mock_timelines.html [29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-hsw2/igt@i915_selftest@mock_timelines.html - shard-kbl: [PASS][30] -> [INCOMPLETE][31] ([fdo#103665]) [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-kbl7/igt@i915_selftest@mock_timelines.html [31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-kbl4/igt@i915_selftest@mock_timelines.html - shard-snb: [PASS][32] -> [INCOMPLETE][33] ([i915#82]) [32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-snb6/igt@i915_selftest@mock_timelines.html [33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-snb5/igt@i915_selftest@mock_timelines.html - shard-apl: [PASS][34] -> [INCOMPLETE][35] ([fdo#103927]) [34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-apl8/igt@i915_selftest@mock_timelines.html [35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-apl3/igt@i915_selftest@mock_timelines.html * igt@i915_suspend@fence-restore-tiled2untiled: - shard-apl: [PASS][36] -> [DMESG-WARN][37] ([i915#180]) +3 similar issues [36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-apl7/igt@i915_suspend@fence-restore-tiled2untiled.html [37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-apl1/igt@i915_suspend@fence-restore-tiled2untiled.html * igt@kms_big_fb@x-tiled-32bpp-rotate-0: - shard-kbl: [PASS][38] -> [DMESG-WARN][39] ([i915#93] / [i915#95]) [38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-kbl7/igt@kms_big_fb@x-tiled-32bpp-rotate-0.html [39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-kbl4/igt@kms_big_fb@x-tiled-32bpp-rotate-0.html * igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic: - shard-hsw: [PASS][40] -> [FAIL][41] ([i915#96]) [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-hsw2/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html [41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-hsw6/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html * igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-pwrite: - shard-tglb: [PASS][42] -> [SKIP][43] ([i915#668]) +8 similar issues [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-tglb3/igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-pwrite.html [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-tglb8/igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-pwrite.html * igt@kms_psr@psr2_primary_page_flip: - shard-iclb: [PASS][44] -> [SKIP][45] ([fdo#109441]) +3 similar issues [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb2/igt@kms_psr@psr2_primary_page_flip.html [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb4/igt@kms_psr@psr2_primary_page_flip.html * igt@perf@oa-exponents: - shard-glk: [PASS][46] -> [FAIL][47] ([i915#84]) [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-glk3/igt@perf@oa-exponents.html [47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-glk5/igt@perf@oa-exponents.html #### Possible fixes #### * igt@gem_busy@busy-vcs1: - shard-iclb: [SKIP][48] ([fdo#112080]) -> [PASS][49] +2 similar issues [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb5/igt@gem_busy@busy-vcs1.html [49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb2/igt@gem_busy@busy-vcs1.html * {igt@gem_ctx_persistence@legacy-engines-mixed-process@blt}: - shard-apl: [FAIL][50] ([i915#679]) -> [PASS][51] [50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-apl4/igt@gem_ctx_persistence@legacy-engines-mixed-process@blt.html [51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-apl6/igt@gem_ctx_persistence@legacy-engines-mixed-process@blt.html * {igt@gem_ctx_persistence@legacy-engines-mixed-process@vebox}: - shard-apl: [INCOMPLETE][52] ([fdo#103927]) -> [PASS][53] [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-apl4/igt@gem_ctx_persistence@legacy-engines-mixed-process@vebox.html [53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-apl6/igt@gem_ctx_persistence@legacy-engines-mixed-process@vebox.html * igt@gem_eio@in-flight-suspend: - shard-kbl: [DMESG-WARN][54] ([i915#180]) -> [PASS][55] +2 similar issues [54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-kbl4/igt@gem_eio@in-flight-suspend.html [55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-kbl4/igt@gem_eio@in-flight-suspend.html * igt@gem_exec_schedule@fifo-bsd: - shard-iclb: [SKIP][56] ([fdo#112146]) -> [PASS][57] [56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb4/igt@gem_exec_schedule@fifo-bsd.html [57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb6/igt@gem_exec_schedule@fifo-bsd.html * igt@gem_exec_schedule@pi-shared-iova-blt: - shard-kbl: [INCOMPLETE][58] ([fdo#103665]) -> [PASS][59] [58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-kbl3/igt@gem_exec_schedule@pi-shared-iova-blt.html [59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-kbl2/igt@gem_exec_schedule@pi-shared-iova-blt.html * igt@gem_exec_schedule@promotion-bsd1: - shard-iclb: [SKIP][60] ([fdo#109276]) -> [PASS][61] +10 similar issues [60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb5/igt@gem_exec_schedule@promotion-bsd1.html [61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb2/igt@gem_exec_schedule@promotion-bsd1.html * igt@gem_partial_pwrite_pread@reads-uncached: - shard-hsw: [FAIL][62] ([i915#694]) -> [PASS][63] +1 similar issue [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-hsw6/igt@gem_partial_pwrite_pread@reads-uncached.html [63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-hsw5/igt@gem_partial_pwrite_pread@reads-uncached.html * igt@gem_ppgtt@flink-and-close-vma-leak: - shard-skl: [FAIL][64] ([i915#644]) -> [PASS][65] [64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-skl9/igt@gem_ppgtt@flink-and-close-vma-leak.html [65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-skl1/igt@gem_ppgtt@flink-and-close-vma-leak.html * igt@gem_tiled_partial_pwrite_pread@writes-after-reads: - shard-hsw: [FAIL][66] -> [PASS][67] [66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-hsw5/igt@gem_tiled_partial_pwrite_pread@writes-after-reads.html [67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-hsw2/igt@gem_tiled_partial_pwrite_pread@writes-after-reads.html * igt@i915_suspend@forcewake: - shard-skl: [INCOMPLETE][68] ([i915#69]) -> [PASS][69] [68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-skl10/igt@i915_suspend@forcewake.html [69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-skl8/igt@i915_suspend@forcewake.html * igt@kms_flip@flip-vs-suspend: - shard-skl: [INCOMPLETE][70] ([i915#221]) -> [PASS][71] [70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-skl5/igt@kms_flip@flip-vs-suspend.html [71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-skl8/igt@kms_flip@flip-vs-suspend.html * igt@kms_flip@flip-vs-suspend-interruptible: - shard-apl: [DMESG-WARN][72] ([i915#180]) -> [PASS][73] +3 similar issues [72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-apl8/igt@kms_flip@flip-vs-suspend-interruptible.html [73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-apl2/igt@kms_flip@flip-vs-suspend-interruptible.html * {igt@kms_hdr@bpc-switch}: - shard-skl: [FAIL][74] ([i915#1188]) -> [PASS][75] [74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-skl1/igt@kms_hdr@bpc-switch.html [75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-skl3/igt@kms_hdr@bpc-switch.html * igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min: - shard-skl: [FAIL][76] ([fdo#108145]) -> [PASS][77] +1 similar issue [76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-skl5/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html [77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-skl3/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc: - shard-skl: [FAIL][78] ([fdo#108145] / [i915#265]) -> [PASS][79] +1 similar issue [78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-skl10/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html [79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-skl9/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html * igt@kms_psr2_su@frontbuffer: - shard-iclb: [SKIP][80] ([fdo#109642] / [fdo#111068]) -> [PASS][81] [80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb5/igt@kms_psr2_su@frontbuffer.html [81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb2/igt@kms_psr2_su@frontbuffer.html * igt@kms_psr@psr2_primary_blt: - shard-iclb: [SKIP][82] ([fdo#109441]) -> [PASS][83] [82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb5/igt@kms_psr@psr2_primary_blt.html [83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb2/igt@kms_psr@psr2_primary_blt.html * igt@kms_setmode@basic: - shard-apl: [FAIL][84] ([i915#31]) -> [PASS][85] [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-apl6/igt@kms_setmode@basic.html [85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-apl4/igt@kms_setmode@basic.html * igt@prime_mmap_coherency@ioctl-errors: - shard-hsw: [FAIL][86] ([i915#831]) -> [PASS][87] [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-hsw5/igt@prime_mmap_coherency@ioctl-errors.html [87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-hsw7/igt@prime_mmap_coherency@ioctl-errors.html #### Warnings #### * igt@gem_ctx_isolation@vcs1-nonpriv-switch: - shard-iclb: [FAIL][88] ([IGT#28]) -> [SKIP][89] ([fdo#112080]) [88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb4/igt@gem_ctx_isolation@vcs1-nonpriv-switch.html [89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb8/igt@gem_ctx_isolation@vcs1-nonpriv-switch.html * igt@gem_tiled_blits@interruptible: - shard-hsw: [FAIL][90] ([i915#818]) -> [FAIL][91] ([i915#694]) [90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-hsw1/igt@gem_tiled_blits@interruptible.html [91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-hsw7/igt@gem_tiled_blits@interruptible.html * igt@i915_pm_dc@dc6-psr: - shard-tglb: [SKIP][92] ([i915#468]) -> [FAIL][93] ([i915#454]) [92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-tglb2/igt@i915_pm_dc@dc6-psr.html [93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-tglb1/igt@i915_pm_dc@dc6-psr.html * igt@kms_dp_dsc@basic-dsc-enable-edp: - shard-iclb: [DMESG-WARN][94] ([i915#1226]) -> [SKIP][95] ([fdo#109349]) [94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html [95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-iclb4/igt@kms_dp_dsc@basic-dsc-enable-edp.html * igt@runner@aborted: - shard-kbl: [FAIL][96] -> [FAIL][97] ([i915#974]) [96]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-kbl3/igt@runner@aborted.html [97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-kbl4/igt@runner@aborted.html - shard-snb: ([FAIL][98], [FAIL][99], [FAIL][100], [FAIL][101], [FAIL][102], [FAIL][103], [FAIL][104], [FAIL][105]) ([fdo#111870] / [i915#1077]) -> ([FAIL][106], [FAIL][107], [FAIL][108], [FAIL][109], [FAIL][110], [FAIL][111], [FAIL][112], [FAIL][113], [FAIL][114]) ([fdo#111870] / [i915#1077] / [i915#974]) [98]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-snb2/igt@runner@aborted.html [99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-snb2/igt@runner@aborted.html [100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-snb4/igt@runner@aborted.html [101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-snb2/igt@runner@aborted.html [102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-snb6/igt@runner@aborted.html [103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-snb6/igt@runner@aborted.html [104]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-snb6/igt@runner@aborted.html [105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7924/shard-snb6/igt@runner@aborted.html [106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-snb2/igt@runner@aborted.html [107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-snb5/igt@runner@aborted.html [108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-snb6/igt@runner@aborted.html [109]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-snb6/igt@runner@aborted.html [110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-snb6/igt@runner@aborted.html [111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-snb5/igt@runner@aborted.html [112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-snb6/igt@runner@aborted.html [113]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-snb6/igt@runner@aborted.html [114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16532/shard-snb6/igt@runner@aborted.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [CI#80]: https://gitlab.freedesktop.org/gfx-ci/i915-infra/issues/80 [IGT#28]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/28 [fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665 [fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927 [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145 [fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276 [fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642 [fdo#110841]: https://bugs.freedesktop.org/show_bug.cgi?id=110841 [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068 [fdo#111870]: https://bugs.freedesktop.org/show_bug.cgi?id=111870 [fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080 [fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146 [fdo#112271]: https://bugs.freedesktop.org/show_bug.cgi?id=112271 [i915#1077]: https://gitlab.freedesktop.org/drm/intel/issues/1077 [i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188 [i915#1226]: https://gitlab.freedesktop.org/drm/intel/issues/1226 [i915#151]: https://gitlab.freedesktop.org/drm/intel/issues/151 [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#413]: https://gitlab.freedesktop.org/drm/intel/issues/413 [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 [i915#468]: https://gitlab.freedesktop.org/drm/intel/issues/468 [i915#58]: https://gitlab.freedesktop.org/drm/intel/issues/58 [i915#61]: https://gitlab.freedesktop.org/drm/intel/issues/61 [i915#644]: https://gitlab.freedesktop.org/drm/intel/issues/644 [i915#668]: https://gitlab.freedesktop.org/drm/intel/issues/668 [i915#679]: https://gitlab.freedesktop.org/drm/intel/issues/679 [i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69 [i915#694]: https://gitlab.freedesktop.org/drm/intel/issues/694 [i915#818]: https://gitlab.freedesktop.org/drm/intel/issues/818 [i915#82]: https://gitlab.freedesktop.org/drm/intel/issues/82 [i915#831]: https://gitlab.freedesktop.org/drm/intel/issues/831 [i915#84]: https://gitlab.freedesktop.org/drm/intel/issues/84 [i915#93]: https://gitlab.freedesktop.org/drm/intel/issues/93 [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 [i915#96]: https://gitlab.freedesktop.org/drm/intel/issues/96 [i915#974]: https://gitlab.freedesktop.org/drm/intel/issues/974 [k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133 Participating hosts (10 -> 10) ------------------------------ No changes in participating hosts Build changes ------------- * CI: CI-20190529 -> None * Linux: CI_DRM_7924 -> Patchwork_16532 CI-20190529: 20190529 CI_DRM_7924: d4ea682de87f4e4378f34f0a196e8fa8983bd306 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5436: 00a64098aaae2ac3154841d76c7b034165380282 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_16532: 9c4c9a0806edc1aa9e49cb27935a2fbe11aa58d2 @ 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_16532/index.html _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915/gt: Expand bad CS completion event debug 2020-02-11 23:09 [Intel-gfx] [PATCH] drm/i915/gt: Expand bad CS completion event debug Chris Wilson ` (2 preceding siblings ...) 2020-02-14 23:16 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork @ 2020-02-20 14:54 ` kbuild test robot 3 siblings, 0 replies; 5+ messages in thread From: kbuild test robot @ 2020-02-20 14:54 UTC (permalink / raw) To: kbuild-all [-- Attachment #1: Type: text/plain, Size: 15533 bytes --] Hi Chris, Thank you for the patch! Yet something to improve: [auto build test ERROR on drm-intel/for-linux-next] [also build test ERROR on v5.6-rc2] [cannot apply to drm-tip/drm-tip next-20200220] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982] url: https://github.com/0day-ci/linux/commits/Chris-Wilson/drm-i915-gt-Expand-bad-CS-completion-event-debug/20200215-041958 base: git://anongit.freedesktop.org/drm-intel for-linux-next config: i386-randconfig-c002-20200220 (attached as .config) compiler: gcc-7 (Debian 7.5.0-5) 7.5.0 reproduce: # save the attached .config to linux build tree make ARCH=i386 If you fix the issue, kindly add following tag Reported-by: kbuild test robot <lkp@intel.com> All errors (new ones prefixed by >>): drivers/gpu/drm/i915/gt/intel_lrc.c: In function 'process_csb': >> drivers/gpu/drm/i915/gt/intel_lrc.c:2325:16: error: unused variable 'regs' [-Werror=unused-variable] const u32 *regs = rq->context->lrc_reg_state; ^~~~ Cyclomatic Complexity 5 include/linux/compiler.h:__read_once_size Cyclomatic Complexity 5 include/linux/compiler.h:__write_once_size Cyclomatic Complexity 1 include/linux/kasan-checks.h:kasan_check_read Cyclomatic Complexity 1 include/linux/kasan-checks.h:kasan_check_write Cyclomatic Complexity 2 arch/x86/include/asm/bitops.h:arch_set_bit Cyclomatic Complexity 1 arch/x86/include/asm/bitops.h:arch___set_bit Cyclomatic Complexity 2 arch/x86/include/asm/bitops.h:arch_clear_bit Cyclomatic Complexity 1 arch/x86/include/asm/bitops.h:arch_clear_bit_unlock Cyclomatic Complexity 1 arch/x86/include/asm/bitops.h:arch_test_and_set_bit Cyclomatic Complexity 1 arch/x86/include/asm/bitops.h:constant_test_bit Cyclomatic Complexity 1 arch/x86/include/asm/bitops.h:variable_test_bit Cyclomatic Complexity 1 arch/x86/include/asm/bitops.h:__ffs Cyclomatic Complexity 1 arch/x86/include/asm/bitops.h:ffs Cyclomatic Complexity 1 arch/x86/include/asm/bitops.h:fls Cyclomatic Complexity 1 include/asm-generic/bitops/instrumented-atomic.h:set_bit Cyclomatic Complexity 1 include/asm-generic/bitops/instrumented-atomic.h:clear_bit Cyclomatic Complexity 1 include/asm-generic/bitops/instrumented-atomic.h:test_and_set_bit Cyclomatic Complexity 1 include/asm-generic/bitops/instrumented-non-atomic.h:__set_bit Cyclomatic Complexity 1 include/asm-generic/bitops/instrumented-lock.h:clear_bit_unlock Cyclomatic Complexity 1 include/linux/log2.h:__ilog2_u32 Cyclomatic Complexity 1 arch/x86/include/asm/div64.h:mul_u32_u32 Cyclomatic Complexity 1 arch/x86/include/asm/string_32.h:memset32 Cyclomatic Complexity 1 include/linux/string.h:memset_p Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_read Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_inc Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_dec Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_dec_and_test Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_fetch_add Cyclomatic Complexity 1 arch/x86/include/asm/atomic.h:arch_atomic_fetch_sub Cyclomatic Complexity 2 arch/x86/include/asm/atomic.h:arch_atomic_try_cmpxchg Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_read Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_fetch_add Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_fetch_sub Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_inc Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_dec Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_try_cmpxchg Cyclomatic Complexity 1 include/asm-generic/atomic-instrumented.h:atomic_dec_and_test Cyclomatic Complexity 1 include/linux/atomic-fallback.h:atomic_fetch_inc Cyclomatic Complexity 1 include/linux/list.h:INIT_LIST_HEAD Cyclomatic Complexity 1 include/linux/list.h:__list_del Cyclomatic Complexity 1 include/linux/list.h:list_is_last Cyclomatic Complexity 1 include/linux/list.h:list_empty Cyclomatic Complexity 1 arch/x86/include/asm/special_insns.h:clflush Cyclomatic Complexity 1 include/linux/err.h:ERR_PTR Cyclomatic Complexity 1 include/linux/err.h:PTR_ERR Cyclomatic Complexity 1 include/linux/err.h:ERR_CAST Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:native_irq_disable Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:native_irq_enable Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:arch_local_irq_disable Cyclomatic Complexity 1 arch/x86/include/asm/irqflags.h:arch_local_irq_enable Cyclomatic Complexity 1 arch/x86/include/asm/processor.h:rep_nop Cyclomatic Complexity 1 arch/x86/include/asm/processor.h:cpu_relax Cyclomatic Complexity 5 arch/x86/include/asm/preempt.h:__preempt_count_add Cyclomatic Complexity 5 arch/x86/include/asm/preempt.h:__preempt_count_sub Cyclomatic Complexity 1 include/linux/bottom_half.h:__local_bh_disable_ip Cyclomatic Complexity 1 include/linux/bottom_half.h:local_bh_disable Cyclomatic Complexity 1 include/linux/spinlock.h:spinlock_check Cyclomatic Complexity 1 include/linux/spinlock.h:spin_lock Cyclomatic Complexity 1 include/linux/spinlock.h:spin_lock_irq Cyclomatic Complexity 1 include/linux/spinlock.h:spin_unlock Cyclomatic Complexity 1 include/linux/spinlock.h:spin_unlock_irq Cyclomatic Complexity 1 include/linux/spinlock.h:spin_unlock_irqrestore Cyclomatic Complexity 1 arch/x86/include/asm/io.h:readl Cyclomatic Complexity 1 arch/x86/include/asm/io.h:writel Cyclomatic Complexity 1 include/linux/rcupdate.h:__rcu_read_lock Cyclomatic Complexity 1 include/linux/rcupdate.h:__rcu_read_unlock Cyclomatic Complexity 1 include/linux/rcupdate.h:rcu_read_lock Cyclomatic Complexity 1 include/linux/rbtree.h:rb_link_node Cyclomatic Complexity 3 include/linux/overflow.h:__ab_c_size Cyclomatic Complexity 1 include/linux/seqlock.h:raw_write_seqcount_begin Cyclomatic Complexity 1 include/linux/seqlock.h:raw_write_seqcount_end Cyclomatic Complexity 1 include/linux/jiffies.h:_msecs_to_jiffies Cyclomatic Complexity 3 include/linux/jiffies.h:msecs_to_jiffies Cyclomatic Complexity 1 include/linux/ktime.h:ktime_to_ns Cyclomatic Complexity 3 include/linux/ktime.h:ktime_compare Cyclomatic Complexity 1 include/linux/ktime.h:ktime_after Cyclomatic Complexity 1 include/linux/timer.h:timer_pending Cyclomatic Complexity 1 include/linux/interrupt.h:tasklet_disable_nosync Cyclomatic Complexity 1 include/linux/interrupt.h:tasklet_enable Cyclomatic Complexity 3 include/linux/slab.h:kmalloc_type Cyclomatic Complexity 28 include/linux/slab.h:kmalloc_index Cyclomatic Complexity 1 include/linux/slab.h:kmalloc_large Cyclomatic Complexity 4 include/linux/slab.h:kmalloc Cyclomatic Complexity 1 include/linux/slab.h:kzalloc Cyclomatic Complexity 1 include/linux/dma-resv.h:dma_resv_get_list Cyclomatic Complexity 1 include/drm/drm_print.h:drm_info_printer Cyclomatic Complexity 1 drivers/gpu/drm/i915/i915_reg.h:i915_mmio_reg_offset Cyclomatic Complexity 1 drivers/gpu/drm/i915/i915_utils.h:msecs_to_jiffies_timeout Cyclomatic Complexity 3 drivers/gpu/drm/i915/i915_utils.h:timer_expired Cyclomatic Complexity 1 drivers/gpu/drm/i915/i915_gem.h:__tasklet_is_enabled Cyclomatic Complexity 1 drivers/gpu/drm/i915/i915_gem.h:__tasklet_enable Cyclomatic Complexity 1 drivers/gpu/drm/i915/gt/intel_engine_types.h:intel_engine_has_preemption Cyclomatic Complexity 1 drivers/gpu/drm/i915/gt/intel_engine_types.h:intel_engine_has_semaphores Cyclomatic Complexity 1 drivers/gpu/drm/i915/gt/intel_engine_types.h:intel_engine_has_relative_mmio Cyclomatic Complexity 1 drivers/gpu/drm/i915/i915_request.h:to_request Cyclomatic Complexity 1 drivers/gpu/drm/i915/i915_request.h:i915_seqno_passed Cyclomatic Complexity 1 drivers/gpu/drm/i915/i915_request.h:__hwsp_seqno Cyclomatic Complexity 1 drivers/gpu/drm/i915/i915_request.h:i915_request_is_ready vim +/regs +2325 drivers/gpu/drm/i915/gt/intel_lrc.c 2212 2213 static void process_csb(struct intel_engine_cs *engine) 2214 { 2215 struct intel_engine_execlists * const execlists = &engine->execlists; 2216 const u32 * const buf = execlists->csb_status; 2217 const u8 num_entries = execlists->csb_size; 2218 u8 head, tail; 2219 2220 /* 2221 * As we modify our execlists state tracking we require exclusive 2222 * access. Either we are inside the tasklet, or the tasklet is disabled 2223 * and we assume that is only inside the reset paths and so serialised. 2224 */ 2225 GEM_BUG_ON(!tasklet_is_locked(&execlists->tasklet) && 2226 !reset_in_progress(execlists)); 2227 GEM_BUG_ON(!intel_engine_in_execlists_submission_mode(engine)); 2228 2229 /* 2230 * Note that csb_write, csb_status may be either in HWSP or mmio. 2231 * When reading from the csb_write mmio register, we have to be 2232 * careful to only use the GEN8_CSB_WRITE_PTR portion, which is 2233 * the low 4bits. As it happens we know the next 4bits are always 2234 * zero and so we can simply masked off the low u8 of the register 2235 * and treat it identically to reading from the HWSP (without having 2236 * to use explicit shifting and masking, and probably bifurcating 2237 * the code to handle the legacy mmio read). 2238 */ 2239 head = execlists->csb_head; 2240 tail = READ_ONCE(*execlists->csb_write); 2241 ENGINE_TRACE(engine, "cs-irq head=%d, tail=%d\n", head, tail); 2242 if (unlikely(head == tail)) 2243 return; 2244 2245 /* 2246 * Hopefully paired with a wmb() in HW! 2247 * 2248 * We must complete the read of the write pointer before any reads 2249 * from the CSB, so that we do not see stale values. Without an rmb 2250 * (lfence) the HW may speculatively perform the CSB[] reads *before* 2251 * we perform the READ_ONCE(*csb_write). 2252 */ 2253 rmb(); 2254 2255 do { 2256 bool promote; 2257 2258 if (++head == num_entries) 2259 head = 0; 2260 2261 /* 2262 * We are flying near dragons again. 2263 * 2264 * We hold a reference to the request in execlist_port[] 2265 * but no more than that. We are operating in softirq 2266 * context and so cannot hold any mutex or sleep. That 2267 * prevents us stopping the requests we are processing 2268 * in port[] from being retired simultaneously (the 2269 * breadcrumb will be complete before we see the 2270 * context-switch). As we only hold the reference to the 2271 * request, any pointer chasing underneath the request 2272 * is subject to a potential use-after-free. Thus we 2273 * store all of the bookkeeping within port[] as 2274 * required, and avoid using unguarded pointers beneath 2275 * request itself. The same applies to the atomic 2276 * status notifier. 2277 */ 2278 2279 ENGINE_TRACE(engine, "csb[%d]: status=0x%08x:0x%08x\n", 2280 head, buf[2 * head + 0], buf[2 * head + 1]); 2281 2282 if (INTEL_GEN(engine->i915) >= 12) 2283 promote = gen12_csb_parse(execlists, buf + 2 * head); 2284 else 2285 promote = gen8_csb_parse(execlists, buf + 2 * head); 2286 if (promote) { 2287 struct i915_request * const *old = execlists->active; 2288 2289 /* Point active to the new ELSP; prevent overwriting */ 2290 WRITE_ONCE(execlists->active, execlists->pending); 2291 2292 if (!inject_preempt_hang(execlists)) 2293 ring_set_paused(engine, 0); 2294 2295 /* cancel old inflight, prepare for switch */ 2296 trace_ports(execlists, "preempted", old); 2297 while (*old) 2298 execlists_schedule_out(*old++); 2299 2300 /* switch pending to inflight */ 2301 GEM_BUG_ON(!assert_pending_valid(execlists, "promote")); 2302 WRITE_ONCE(execlists->active, 2303 memcpy(execlists->inflight, 2304 execlists->pending, 2305 execlists_num_ports(execlists) * 2306 sizeof(*execlists->pending))); 2307 2308 WRITE_ONCE(execlists->pending[0], NULL); 2309 } else { 2310 GEM_BUG_ON(!*execlists->active); 2311 2312 /* port0 completed, advanced to port1 */ 2313 trace_ports(execlists, "completed", execlists->active); 2314 2315 /* 2316 * We rely on the hardware being strongly 2317 * ordered, that the breadcrumb write is 2318 * coherent (visible from the CPU) before the 2319 * user interrupt and CSB is processed. 2320 */ 2321 if (GEM_SHOW_DEBUG() && 2322 !i915_request_completed(*execlists->active) && 2323 !reset_in_progress(execlists)) { 2324 struct i915_request *rq = *execlists->active; > 2325 const u32 *regs = rq->context->lrc_reg_state; 2326 2327 ENGINE_TRACE(engine, 2328 "ring:{start:0x%08x, head:%04x, tail:%04x, ctl:%08x, mode:%08x}\n", 2329 ENGINE_READ(engine, RING_START), 2330 ENGINE_READ(engine, RING_HEAD) & HEAD_ADDR, 2331 ENGINE_READ(engine, RING_TAIL) & TAIL_ADDR, 2332 ENGINE_READ(engine, RING_CTL), 2333 ENGINE_READ(engine, RING_MI_MODE)); 2334 ENGINE_TRACE(engine, 2335 "rq:{start:%08x, head:%04x, tail:%04x, seqno:%llx:%d, hwsp:%d}, ", 2336 i915_ggtt_offset(rq->ring->vma), 2337 rq->head, rq->tail, 2338 rq->fence.context, 2339 lower_32_bits(rq->fence.seqno), 2340 hwsp_seqno(rq)); 2341 ENGINE_TRACE(engine, 2342 "ctx:{start:%08x, head:%04x, tail:%04x}, ", 2343 regs[CTX_RING_START], 2344 regs[CTX_RING_HEAD], 2345 regs[CTX_RING_TAIL]); 2346 2347 GEM_BUG_ON("context completed before request"); 2348 } 2349 2350 execlists_schedule_out(*execlists->active++); 2351 2352 GEM_BUG_ON(execlists->active - execlists->inflight > 2353 execlists_num_ports(execlists)); 2354 } 2355 } while (head != tail); 2356 2357 execlists->csb_head = head; 2358 set_timeslice(engine); 2359 2360 /* 2361 * Gen11 has proven to fail wrt global observation point between 2362 * entry and tail update, failing on the ordering and thus 2363 * we see an old entry in the context status buffer. 2364 * 2365 * Forcibly evict out entries for the next gpu csb update, 2366 * to increase the odds that we get a fresh entries with non 2367 * working hardware. The cost for doing so comes out mostly with 2368 * the wash as hardware, working or not, will need to do the 2369 * invalidation before. 2370 */ 2371 invalidate_csb_entries(&buf[0], &buf[num_entries - 1]); 2372 } 2373 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org [-- Attachment #2: config.gz --] [-- Type: application/gzip, Size: 39450 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-02-20 14:54 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-02-11 23:09 [Intel-gfx] [PATCH] drm/i915/gt: Expand bad CS completion event debug Chris Wilson 2020-02-12 12:44 ` Mika Kuoppala 2020-02-12 20:29 ` [Intel-gfx] ✓ Fi.CI.BAT: success for " Patchwork 2020-02-14 23:16 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork 2020-02-20 14:54 ` [Intel-gfx] [PATCH] " kbuild test robot
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.