* [PATCH v3] drm/i915/execlists: Disable preemption under GVT
@ 2019-06-24 9:02 Chris Wilson
2019-06-24 9:36 ` ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev3) Patchwork
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: Chris Wilson @ 2019-06-24 9:02 UTC (permalink / raw)
To: intel-gfx
Preempt-to-busy uses a GPU semaphore to enforce an idle-barrier across
preemption, but mediated gvt does not fully support semaphores.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/gt/intel_lrc.c | 21 ++++++++++++++++-----
1 file changed, 16 insertions(+), 5 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c
index c8a0c9b32764..8017efb36f7b 100644
--- a/drivers/gpu/drm/i915/gt/intel_lrc.c
+++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
@@ -294,6 +294,9 @@ static inline bool need_preempt(const struct intel_engine_cs *engine,
{
int last_prio;
+ if (!intel_engine_has_preemption(engine))
+ return false;
+
/*
* Check if the current priority hint merits a preemption attempt.
*
@@ -890,6 +893,9 @@ need_timeslice(struct intel_engine_cs *engine, const struct i915_request *rq)
{
int hint;
+ if (!intel_engine_has_preemption(engine))
+ return false;
+
if (list_is_last(&rq->sched.link, &engine->active.requests))
return false;
@@ -2600,7 +2606,8 @@ static u32 *gen8_emit_fini_breadcrumb(struct i915_request *request, u32 *cs)
*cs++ = MI_USER_INTERRUPT;
*cs++ = MI_ARB_ON_OFF | MI_ARB_ENABLE;
- cs = emit_preempt_busywait(request, cs);
+ if (intel_engine_has_preemption(request->engine))
+ cs = emit_preempt_busywait(request, cs);
request->tail = intel_ring_offset(request, cs);
assert_ring_tail_valid(request->ring, request->tail);
@@ -2624,7 +2631,8 @@ static u32 *gen8_emit_fini_breadcrumb_rcs(struct i915_request *request, u32 *cs)
*cs++ = MI_USER_INTERRUPT;
*cs++ = MI_ARB_ON_OFF | MI_ARB_ENABLE;
- cs = emit_preempt_busywait(request, cs);
+ if (intel_engine_has_preemption(request->engine))
+ cs = emit_preempt_busywait(request, cs);
request->tail = intel_ring_offset(request, cs);
assert_ring_tail_valid(request->ring, request->tail);
@@ -2672,10 +2680,11 @@ void intel_execlists_set_default_submission(struct intel_engine_cs *engine)
engine->unpark = NULL;
engine->flags |= I915_ENGINE_SUPPORTS_STATS;
- if (!intel_vgpu_active(engine->i915))
+ if (!intel_vgpu_active(engine->i915)) {
engine->flags |= I915_ENGINE_HAS_SEMAPHORES;
- if (HAS_LOGICAL_RING_PREEMPTION(engine->i915))
- engine->flags |= I915_ENGINE_HAS_PREEMPTION;
+ if (HAS_LOGICAL_RING_PREEMPTION(engine->i915))
+ engine->flags |= I915_ENGINE_HAS_PREEMPTION;
+ }
}
static void execlists_destroy(struct intel_engine_cs *engine)
@@ -3463,6 +3472,8 @@ intel_execlists_create_virtual(struct i915_gem_context *ctx,
ve->base.emit_fini_breadcrumb = sibling->emit_fini_breadcrumb;
ve->base.emit_fini_breadcrumb_dw =
sibling->emit_fini_breadcrumb_dw;
+
+ ve->base.flags = sibling->flags;
}
return &ve->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] 8+ messages in thread
* ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev3)
2019-06-24 9:02 [PATCH v3] drm/i915/execlists: Disable preemption under GVT Chris Wilson
@ 2019-06-24 9:36 ` Patchwork
2019-06-24 9:42 ` [PATCH v4] drm/i915/execlists: Disable preemption under GVT Chris Wilson
` (2 subsequent siblings)
3 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2019-06-24 9:36 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/execlists: Disable preemption under GVT (rev3)
URL : https://patchwork.freedesktop.org/series/62533/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_6331 -> Patchwork_13402
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_13402 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_13402, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_13402:
### IGT changes ###
#### Possible regressions ####
* igt@gem_close_race@basic-process:
- fi-bxt-j4205: [PASS][1] -> [FAIL][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bxt-j4205/igt@gem_close_race@basic-process.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-bxt-j4205/igt@gem_close_race@basic-process.html
- fi-cml-u: [PASS][3] -> [FAIL][4] +2 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-cml-u/igt@gem_close_race@basic-process.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-cml-u/igt@gem_close_race@basic-process.html
- fi-cfl-8109u: [PASS][5] -> [FAIL][6] +1 similar issue
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-cfl-8109u/igt@gem_close_race@basic-process.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-cfl-8109u/igt@gem_close_race@basic-process.html
- fi-bxt-dsi: [PASS][7] -> [FAIL][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bxt-dsi/igt@gem_close_race@basic-process.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-bxt-dsi/igt@gem_close_race@basic-process.html
* igt@gem_close_race@basic-threads:
- fi-whl-u: [PASS][9] -> [INCOMPLETE][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-whl-u/igt@gem_close_race@basic-threads.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-whl-u/igt@gem_close_race@basic-threads.html
- fi-skl-guc: [PASS][11] -> [INCOMPLETE][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-guc/igt@gem_close_race@basic-threads.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-skl-guc/igt@gem_close_race@basic-threads.html
- fi-kbl-7567u: [PASS][13] -> [INCOMPLETE][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-7567u/igt@gem_close_race@basic-threads.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-7567u/igt@gem_close_race@basic-threads.html
- fi-skl-6260u: [PASS][15] -> [INCOMPLETE][16]
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6260u/igt@gem_close_race@basic-threads.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-skl-6260u/igt@gem_close_race@basic-threads.html
- fi-skl-6770hq: [PASS][17] -> [INCOMPLETE][18]
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6770hq/igt@gem_close_race@basic-threads.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-skl-6770hq/igt@gem_close_race@basic-threads.html
- fi-cfl-guc: [PASS][19] -> [INCOMPLETE][20]
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-cfl-guc/igt@gem_close_race@basic-threads.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-cfl-guc/igt@gem_close_race@basic-threads.html
- fi-skl-lmem: [PASS][21] -> [INCOMPLETE][22]
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-lmem/igt@gem_close_race@basic-threads.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-skl-lmem/igt@gem_close_race@basic-threads.html
- fi-skl-6700k2: [PASS][23] -> [INCOMPLETE][24]
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6700k2/igt@gem_close_race@basic-threads.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-skl-6700k2/igt@gem_close_race@basic-threads.html
- fi-cfl-8700k: [PASS][25] -> [INCOMPLETE][26]
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-cfl-8700k/igt@gem_close_race@basic-threads.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-cfl-8700k/igt@gem_close_race@basic-threads.html
* igt@gem_cpu_reloc@basic:
- fi-kbl-7500u: [PASS][27] -> [WARN][28]
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-7500u/igt@gem_cpu_reloc@basic.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-7500u/igt@gem_cpu_reloc@basic.html
* igt@gem_ctx_switch@basic-default:
- fi-skl-6600u: [PASS][29] -> [INCOMPLETE][30]
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6600u/igt@gem_ctx_switch@basic-default.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-skl-6600u/igt@gem_ctx_switch@basic-default.html
- fi-skl-iommu: [PASS][31] -> [INCOMPLETE][32]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-iommu/igt@gem_ctx_switch@basic-default.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-skl-iommu/igt@gem_ctx_switch@basic-default.html
* igt@gem_exec_create@basic:
- fi-cfl-8109u: [PASS][33] -> [INCOMPLETE][34]
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-cfl-8109u/igt@gem_exec_create@basic.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-cfl-8109u/igt@gem_exec_create@basic.html
- fi-kbl-r: [PASS][35] -> [INCOMPLETE][36]
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-r/igt@gem_exec_create@basic.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-r/igt@gem_exec_create@basic.html
- fi-kbl-guc: [PASS][37] -> [INCOMPLETE][38]
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-guc/igt@gem_exec_create@basic.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-guc/igt@gem_exec_create@basic.html
- fi-kbl-x1275: [PASS][39] -> [INCOMPLETE][40]
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-x1275/igt@gem_exec_create@basic.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-x1275/igt@gem_exec_create@basic.html
- fi-kbl-8809g: [PASS][41] -> [INCOMPLETE][42]
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-8809g/igt@gem_exec_create@basic.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-8809g/igt@gem_exec_create@basic.html
- fi-kbl-7500u: [PASS][43] -> [INCOMPLETE][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-7500u/igt@gem_exec_create@basic.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-7500u/igt@gem_exec_create@basic.html
* igt@gem_exec_reloc@basic-write-cpu-active:
- fi-icl-u2: [PASS][45] -> [SKIP][46] +75 similar issues
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u2/igt@gem_exec_reloc@basic-write-cpu-active.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-u2/igt@gem_exec_reloc@basic-write-cpu-active.html
* igt@gem_tiled_blits@basic:
- fi-icl-u3: [PASS][47] -> [SKIP][48] +75 similar issues
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u3/igt@gem_tiled_blits@basic.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-u3/igt@gem_tiled_blits@basic.html
* igt@i915_pm_rpm@basic-pci-d3-state:
- fi-icl-u2: [PASS][49] -> [FAIL][50]
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u2/igt@i915_pm_rpm@basic-pci-d3-state.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-u2/igt@i915_pm_rpm@basic-pci-d3-state.html
- fi-icl-u3: [PASS][51] -> [FAIL][52]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u3/igt@i915_pm_rpm@basic-pci-d3-state.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-u3/igt@i915_pm_rpm@basic-pci-d3-state.html
- fi-icl-dsi: [PASS][53] -> [FAIL][54]
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-dsi/igt@i915_pm_rpm@basic-pci-d3-state.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-dsi/igt@i915_pm_rpm@basic-pci-d3-state.html
* igt@i915_selftest@live_execlists:
- fi-bsw-n3050: [PASS][55] -> [DMESG-FAIL][56]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bsw-n3050/igt@i915_selftest@live_execlists.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-bsw-n3050/igt@i915_selftest@live_execlists.html
- fi-bsw-kefka: [PASS][57] -> [DMESG-FAIL][58]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bsw-kefka/igt@i915_selftest@live_execlists.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-bsw-kefka/igt@i915_selftest@live_execlists.html
- fi-bdw-5557u: [PASS][59] -> [DMESG-FAIL][60]
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bdw-5557u/igt@i915_selftest@live_execlists.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-bdw-5557u/igt@i915_selftest@live_execlists.html
* igt@kms_busy@basic-flip-a:
- fi-icl-dsi: [PASS][61] -> [SKIP][62] +76 similar issues
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-dsi/igt@kms_busy@basic-flip-a.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-dsi/igt@kms_busy@basic-flip-a.html
#### Warnings ####
* igt@gem_exec_parse@basic-allowed:
- fi-icl-dsi: [SKIP][63] ([fdo#109289]) -> [SKIP][64] +1 similar issue
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-dsi/igt@gem_exec_parse@basic-allowed.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-dsi/igt@gem_exec_parse@basic-allowed.html
- fi-icl-u2: [SKIP][65] ([fdo#109289]) -> [SKIP][66] +1 similar issue
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u2/igt@gem_exec_parse@basic-allowed.html
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-u2/igt@gem_exec_parse@basic-allowed.html
* igt@gem_exec_parse@basic-rejected:
- fi-icl-u3: [SKIP][67] ([fdo#109289]) -> [SKIP][68] +1 similar issue
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u3/igt@gem_exec_parse@basic-rejected.html
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-u3/igt@gem_exec_parse@basic-rejected.html
* igt@kms_frontbuffer_tracking@basic:
- fi-icl-u3: [FAIL][69] ([fdo#103167]) -> [SKIP][70]
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u3/igt@kms_frontbuffer_tracking@basic.html
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-u3/igt@kms_frontbuffer_tracking@basic.html
- fi-icl-u2: [FAIL][71] ([fdo#103167]) -> [SKIP][72]
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html
Known issues
------------
Here are the changes found in Patchwork_13402 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_close_race@basic-process:
- fi-kbl-7500u: [PASS][73] -> [FAIL][74] ([fdo#110946]) +1 similar issue
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-7500u/igt@gem_close_race@basic-process.html
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-7500u/igt@gem_close_race@basic-process.html
- fi-glk-dsi: [PASS][75] -> [FAIL][76] ([fdo#110946])
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-glk-dsi/igt@gem_close_race@basic-process.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-glk-dsi/igt@gem_close_race@basic-process.html
- fi-apl-guc: [PASS][77] -> [FAIL][78] ([fdo#110512])
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-apl-guc/igt@gem_close_race@basic-process.html
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-apl-guc/igt@gem_close_race@basic-process.html
- fi-kbl-7567u: [PASS][79] -> [FAIL][80] ([fdo#110946])
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-7567u/igt@gem_close_race@basic-process.html
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-7567u/igt@gem_close_race@basic-process.html
- fi-skl-guc: [PASS][81] -> [FAIL][82] ([fdo#110946])
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-guc/igt@gem_close_race@basic-process.html
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-skl-guc/igt@gem_close_race@basic-process.html
- fi-skl-6260u: [PASS][83] -> [FAIL][84] ([fdo#110946])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6260u/igt@gem_close_race@basic-process.html
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-skl-6260u/igt@gem_close_race@basic-process.html
- fi-skl-6700k2: [PASS][85] -> [FAIL][86] ([fdo#110946])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6700k2/igt@gem_close_race@basic-process.html
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-skl-6700k2/igt@gem_close_race@basic-process.html
* igt@gem_close_race@basic-threads:
- fi-glk-dsi: [PASS][87] -> [INCOMPLETE][88] ([fdo#103359] / [k.org#198133])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-glk-dsi/igt@gem_close_race@basic-threads.html
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-glk-dsi/igt@gem_close_race@basic-threads.html
- fi-bxt-j4205: [PASS][89] -> [INCOMPLETE][90] ([fdo#103927])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bxt-j4205/igt@gem_close_race@basic-threads.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-bxt-j4205/igt@gem_close_race@basic-threads.html
- fi-cml-u2: [PASS][91] -> [INCOMPLETE][92] ([fdo#110566])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-cml-u2/igt@gem_close_race@basic-threads.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-cml-u2/igt@gem_close_race@basic-threads.html
- fi-apl-guc: [PASS][93] -> [INCOMPLETE][94] ([fdo#103927])
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-apl-guc/igt@gem_close_race@basic-threads.html
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-apl-guc/igt@gem_close_race@basic-threads.html
- fi-bxt-dsi: [PASS][95] -> [INCOMPLETE][96] ([fdo#103927])
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bxt-dsi/igt@gem_close_race@basic-threads.html
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-bxt-dsi/igt@gem_close_race@basic-threads.html
* igt@gem_cpu_reloc@basic:
- fi-kbl-x1275: [PASS][97] -> [FAIL][98] ([fdo#110946]) +2 similar issues
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-x1275/igt@gem_cpu_reloc@basic.html
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-x1275/igt@gem_cpu_reloc@basic.html
* igt@gem_ctx_switch@basic-default:
- fi-kbl-r: [PASS][99] -> [FAIL][100] ([fdo#110946]) +2 similar issues
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-r/igt@gem_ctx_switch@basic-default.html
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-r/igt@gem_ctx_switch@basic-default.html
- fi-kbl-8809g: [PASS][101] -> [FAIL][102] ([fdo#110946]) +2 similar issues
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-8809g/igt@gem_ctx_switch@basic-default.html
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-8809g/igt@gem_ctx_switch@basic-default.html
- fi-kbl-guc: [PASS][103] -> [FAIL][104] ([fdo#110946]) +2 similar issues
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-guc/igt@gem_ctx_switch@basic-default.html
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-kbl-guc/igt@gem_ctx_switch@basic-default.html
* igt@gem_exec_create@basic:
- fi-cml-u: [PASS][105] -> [INCOMPLETE][106] ([fdo#110566])
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-cml-u/igt@gem_exec_create@basic.html
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-cml-u/igt@gem_exec_create@basic.html
#### Possible fixes ####
* igt@gem_mmap_gtt@basic-small-bo:
- fi-icl-u3: [DMESG-WARN][107] ([fdo#107724]) -> [PASS][108]
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u3/igt@gem_mmap_gtt@basic-small-bo.html
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-u3/igt@gem_mmap_gtt@basic-small-bo.html
* igt@kms_flip@basic-flip-vs-dpms:
- fi-icl-dsi: [DMESG-WARN][109] ([fdo#107724]) -> [PASS][110]
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-dsi/igt@kms_flip@basic-flip-vs-dpms.html
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/fi-icl-dsi/igt@kms_flip@basic-flip-vs-dpms.html
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103359]: https://bugs.freedesktop.org/show_bug.cgi?id=103359
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
[fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
[fdo#110512]: https://bugs.freedesktop.org/show_bug.cgi?id=110512
[fdo#110566]: https://bugs.freedesktop.org/show_bug.cgi?id=110566
[fdo#110946]: https://bugs.freedesktop.org/show_bug.cgi?id=110946
[k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133
Participating hosts (48 -> 43)
------------------------------
Additional (1): fi-pnv-d510
Missing (6): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-icl-y fi-bdw-samus
Build changes
-------------
* Linux: CI_DRM_6331 -> Patchwork_13402
CI_DRM_6331: a20afe5511160e9c1ea22b80b3be0226dfb0917a @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5064: 22850c1906550fb97b405c019275dcfb34be8cf7 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_13402: c4333154133b7d39ad5a47c1c187fe279e40bb89 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
c4333154133b drm/i915/execlists: Disable preemption under GVT
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13402/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v4] drm/i915/execlists: Disable preemption under GVT
2019-06-24 9:02 [PATCH v3] drm/i915/execlists: Disable preemption under GVT Chris Wilson
2019-06-24 9:36 ` ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev3) Patchwork
@ 2019-06-24 9:42 ` Chris Wilson
2019-06-24 9:47 ` [PATCH v5] " Chris Wilson
2019-06-24 10:30 ` ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev5) Patchwork
3 siblings, 0 replies; 8+ messages in thread
From: Chris Wilson @ 2019-06-24 9:42 UTC (permalink / raw)
To: intel-gfx
Preempt-to-busy uses a GPU semaphore to enforce an idle-barrier across
preemption, but mediated gvt does not fully support semaphores.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/gt/intel_engine_cs.c | 4 ++--
drivers/gpu/drm/i915/gt/intel_lrc.c | 21 ++++++++++++++++-----
2 files changed, 18 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
index 4961f74fd902..d6fbc47727c1 100644
--- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
@@ -830,6 +830,8 @@ int intel_engine_init_common(struct intel_engine_cs *engine)
struct drm_i915_private *i915 = engine->i915;
int ret;
+ engine->set_default_submission(engine);
+
/* We may need to do things with the shrinker which
* require us to immediately switch back to the default
* context. This can cause a problem as pinning the
@@ -857,8 +859,6 @@ int intel_engine_init_common(struct intel_engine_cs *engine)
engine->emit_fini_breadcrumb_dw = ret;
- engine->set_default_submission(engine);
-
return 0;
err_unpin:
diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c
index c8a0c9b32764..8017efb36f7b 100644
--- a/drivers/gpu/drm/i915/gt/intel_lrc.c
+++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
@@ -294,6 +294,9 @@ static inline bool need_preempt(const struct intel_engine_cs *engine,
{
int last_prio;
+ if (!intel_engine_has_preemption(engine))
+ return false;
+
/*
* Check if the current priority hint merits a preemption attempt.
*
@@ -890,6 +893,9 @@ need_timeslice(struct intel_engine_cs *engine, const struct i915_request *rq)
{
int hint;
+ if (!intel_engine_has_preemption(engine))
+ return false;
+
if (list_is_last(&rq->sched.link, &engine->active.requests))
return false;
@@ -2600,7 +2606,8 @@ static u32 *gen8_emit_fini_breadcrumb(struct i915_request *request, u32 *cs)
*cs++ = MI_USER_INTERRUPT;
*cs++ = MI_ARB_ON_OFF | MI_ARB_ENABLE;
- cs = emit_preempt_busywait(request, cs);
+ if (intel_engine_has_preemption(request->engine))
+ cs = emit_preempt_busywait(request, cs);
request->tail = intel_ring_offset(request, cs);
assert_ring_tail_valid(request->ring, request->tail);
@@ -2624,7 +2631,8 @@ static u32 *gen8_emit_fini_breadcrumb_rcs(struct i915_request *request, u32 *cs)
*cs++ = MI_USER_INTERRUPT;
*cs++ = MI_ARB_ON_OFF | MI_ARB_ENABLE;
- cs = emit_preempt_busywait(request, cs);
+ if (intel_engine_has_preemption(request->engine))
+ cs = emit_preempt_busywait(request, cs);
request->tail = intel_ring_offset(request, cs);
assert_ring_tail_valid(request->ring, request->tail);
@@ -2672,10 +2680,11 @@ void intel_execlists_set_default_submission(struct intel_engine_cs *engine)
engine->unpark = NULL;
engine->flags |= I915_ENGINE_SUPPORTS_STATS;
- if (!intel_vgpu_active(engine->i915))
+ if (!intel_vgpu_active(engine->i915)) {
engine->flags |= I915_ENGINE_HAS_SEMAPHORES;
- if (HAS_LOGICAL_RING_PREEMPTION(engine->i915))
- engine->flags |= I915_ENGINE_HAS_PREEMPTION;
+ if (HAS_LOGICAL_RING_PREEMPTION(engine->i915))
+ engine->flags |= I915_ENGINE_HAS_PREEMPTION;
+ }
}
static void execlists_destroy(struct intel_engine_cs *engine)
@@ -3463,6 +3472,8 @@ intel_execlists_create_virtual(struct i915_gem_context *ctx,
ve->base.emit_fini_breadcrumb = sibling->emit_fini_breadcrumb;
ve->base.emit_fini_breadcrumb_dw =
sibling->emit_fini_breadcrumb_dw;
+
+ ve->base.flags = sibling->flags;
}
return &ve->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] 8+ messages in thread
* [PATCH v5] drm/i915/execlists: Disable preemption under GVT
2019-06-24 9:02 [PATCH v3] drm/i915/execlists: Disable preemption under GVT Chris Wilson
2019-06-24 9:36 ` ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev3) Patchwork
2019-06-24 9:42 ` [PATCH v4] drm/i915/execlists: Disable preemption under GVT Chris Wilson
@ 2019-06-24 9:47 ` Chris Wilson
2019-06-25 5:02 ` Zhang, Xiaolin
2019-06-24 10:30 ` ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev5) Patchwork
3 siblings, 1 reply; 8+ messages in thread
From: Chris Wilson @ 2019-06-24 9:47 UTC (permalink / raw)
To: intel-gfx
Preempt-to-busy uses a GPU semaphore to enforce an idle-barrier across
preemption, but mediated gvt does not fully support semaphores.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/gt/intel_engine_cs.c | 4 ++--
drivers/gpu/drm/i915/gt/intel_lrc.c | 21 ++++++++++++++++-----
drivers/gpu/drm/i915/gt/selftest_lrc.c | 3 +++
3 files changed, 21 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
index 4961f74fd902..d6fbc47727c1 100644
--- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
@@ -830,6 +830,8 @@ int intel_engine_init_common(struct intel_engine_cs *engine)
struct drm_i915_private *i915 = engine->i915;
int ret;
+ engine->set_default_submission(engine);
+
/* We may need to do things with the shrinker which
* require us to immediately switch back to the default
* context. This can cause a problem as pinning the
@@ -857,8 +859,6 @@ int intel_engine_init_common(struct intel_engine_cs *engine)
engine->emit_fini_breadcrumb_dw = ret;
- engine->set_default_submission(engine);
-
return 0;
err_unpin:
diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c
index c8a0c9b32764..8017efb36f7b 100644
--- a/drivers/gpu/drm/i915/gt/intel_lrc.c
+++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
@@ -294,6 +294,9 @@ static inline bool need_preempt(const struct intel_engine_cs *engine,
{
int last_prio;
+ if (!intel_engine_has_preemption(engine))
+ return false;
+
/*
* Check if the current priority hint merits a preemption attempt.
*
@@ -890,6 +893,9 @@ need_timeslice(struct intel_engine_cs *engine, const struct i915_request *rq)
{
int hint;
+ if (!intel_engine_has_preemption(engine))
+ return false;
+
if (list_is_last(&rq->sched.link, &engine->active.requests))
return false;
@@ -2600,7 +2606,8 @@ static u32 *gen8_emit_fini_breadcrumb(struct i915_request *request, u32 *cs)
*cs++ = MI_USER_INTERRUPT;
*cs++ = MI_ARB_ON_OFF | MI_ARB_ENABLE;
- cs = emit_preempt_busywait(request, cs);
+ if (intel_engine_has_preemption(request->engine))
+ cs = emit_preempt_busywait(request, cs);
request->tail = intel_ring_offset(request, cs);
assert_ring_tail_valid(request->ring, request->tail);
@@ -2624,7 +2631,8 @@ static u32 *gen8_emit_fini_breadcrumb_rcs(struct i915_request *request, u32 *cs)
*cs++ = MI_USER_INTERRUPT;
*cs++ = MI_ARB_ON_OFF | MI_ARB_ENABLE;
- cs = emit_preempt_busywait(request, cs);
+ if (intel_engine_has_preemption(request->engine))
+ cs = emit_preempt_busywait(request, cs);
request->tail = intel_ring_offset(request, cs);
assert_ring_tail_valid(request->ring, request->tail);
@@ -2672,10 +2680,11 @@ void intel_execlists_set_default_submission(struct intel_engine_cs *engine)
engine->unpark = NULL;
engine->flags |= I915_ENGINE_SUPPORTS_STATS;
- if (!intel_vgpu_active(engine->i915))
+ if (!intel_vgpu_active(engine->i915)) {
engine->flags |= I915_ENGINE_HAS_SEMAPHORES;
- if (HAS_LOGICAL_RING_PREEMPTION(engine->i915))
- engine->flags |= I915_ENGINE_HAS_PREEMPTION;
+ if (HAS_LOGICAL_RING_PREEMPTION(engine->i915))
+ engine->flags |= I915_ENGINE_HAS_PREEMPTION;
+ }
}
static void execlists_destroy(struct intel_engine_cs *engine)
@@ -3463,6 +3472,8 @@ intel_execlists_create_virtual(struct i915_gem_context *ctx,
ve->base.emit_fini_breadcrumb = sibling->emit_fini_breadcrumb;
ve->base.emit_fini_breadcrumb_dw =
sibling->emit_fini_breadcrumb_dw;
+
+ ve->base.flags = sibling->flags;
}
return &ve->context;
diff --git a/drivers/gpu/drm/i915/gt/selftest_lrc.c b/drivers/gpu/drm/i915/gt/selftest_lrc.c
index 0c97f953e908..b99b589a6c81 100644
--- a/drivers/gpu/drm/i915/gt/selftest_lrc.c
+++ b/drivers/gpu/drm/i915/gt/selftest_lrc.c
@@ -270,6 +270,9 @@ static int live_timeslice_preempt(void *arg)
enum intel_engine_id id;
for_each_engine(engine, i915, id) {
+ if (!intel_engine_has_preemption(engine))
+ continue;
+
memset(vaddr, 0, PAGE_SIZE);
err = slice_semaphore_queue(engine, vma, count);
--
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] 8+ messages in thread
* ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev5)
2019-06-24 9:02 [PATCH v3] drm/i915/execlists: Disable preemption under GVT Chris Wilson
` (2 preceding siblings ...)
2019-06-24 9:47 ` [PATCH v5] " Chris Wilson
@ 2019-06-24 10:30 ` Patchwork
2019-06-24 10:37 ` Chris Wilson
3 siblings, 1 reply; 8+ messages in thread
From: Patchwork @ 2019-06-24 10:30 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/execlists: Disable preemption under GVT (rev5)
URL : https://patchwork.freedesktop.org/series/62533/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_6331 -> Patchwork_13404
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_13404 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_13404, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_13404:
### IGT changes ###
#### Possible regressions ####
* igt@i915_selftest@live_execlists:
- fi-kbl-7567u: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-7567u/igt@i915_selftest@live_execlists.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-kbl-7567u/igt@i915_selftest@live_execlists.html
- fi-bsw-n3050: [PASS][3] -> [DMESG-FAIL][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bsw-n3050/igt@i915_selftest@live_execlists.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-bsw-n3050/igt@i915_selftest@live_execlists.html
- fi-bsw-kefka: [PASS][5] -> [DMESG-FAIL][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bsw-kefka/igt@i915_selftest@live_execlists.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-bsw-kefka/igt@i915_selftest@live_execlists.html
- fi-skl-6260u: [PASS][7] -> [INCOMPLETE][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6260u/igt@i915_selftest@live_execlists.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-skl-6260u/igt@i915_selftest@live_execlists.html
- fi-skl-6770hq: [PASS][9] -> [INCOMPLETE][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6770hq/igt@i915_selftest@live_execlists.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-skl-6770hq/igt@i915_selftest@live_execlists.html
- fi-bdw-5557u: [PASS][11] -> [DMESG-FAIL][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bdw-5557u/igt@i915_selftest@live_execlists.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-bdw-5557u/igt@i915_selftest@live_execlists.html
- fi-skl-lmem: [PASS][13] -> [INCOMPLETE][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-lmem/igt@i915_selftest@live_execlists.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-skl-lmem/igt@i915_selftest@live_execlists.html
Known issues
------------
Here are the changes found in Patchwork_13404 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_module_load@reload:
- fi-icl-dsi: [PASS][15] -> [INCOMPLETE][16] ([fdo#107713])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-dsi/igt@i915_module_load@reload.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-icl-dsi/igt@i915_module_load@reload.html
* igt@i915_selftest@live_blt:
- fi-skl-iommu: [PASS][17] -> [INCOMPLETE][18] ([fdo#108602])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-iommu/igt@i915_selftest@live_blt.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-skl-iommu/igt@i915_selftest@live_blt.html
* igt@i915_selftest@live_execlists:
- fi-icl-u2: [PASS][19] -> [INCOMPLETE][20] ([fdo#107713])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u2/igt@i915_selftest@live_execlists.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-icl-u2/igt@i915_selftest@live_execlists.html
- fi-icl-u3: [PASS][21] -> [INCOMPLETE][22] ([fdo#107713])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u3/igt@i915_selftest@live_execlists.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-icl-u3/igt@i915_selftest@live_execlists.html
- fi-cfl-8109u: [PASS][23] -> [INCOMPLETE][24] ([fdo#110977])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-cfl-8109u/igt@i915_selftest@live_execlists.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-cfl-8109u/igt@i915_selftest@live_execlists.html
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-skl-6700k2: [PASS][25] -> [INCOMPLETE][26] ([fdo#104108])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6700k2/igt@kms_chamelium@common-hpd-after-suspend.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-skl-6700k2/igt@kms_chamelium@common-hpd-after-suspend.html
#### Possible fixes ####
* igt@gem_mmap_gtt@basic-small-bo:
- fi-icl-u3: [DMESG-WARN][27] ([fdo#107724]) -> [PASS][28]
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-icl-u3/igt@gem_mmap_gtt@basic-small-bo.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-icl-u3/igt@gem_mmap_gtt@basic-small-bo.html
[fdo#104108]: https://bugs.freedesktop.org/show_bug.cgi?id=104108
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
[fdo#108602]: https://bugs.freedesktop.org/show_bug.cgi?id=108602
[fdo#110977]: https://bugs.freedesktop.org/show_bug.cgi?id=110977
Participating hosts (48 -> 43)
------------------------------
Additional (1): fi-pnv-d510
Missing (6): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-icl-y fi-bdw-samus
Build changes
-------------
* Linux: CI_DRM_6331 -> Patchwork_13404
CI_DRM_6331: a20afe5511160e9c1ea22b80b3be0226dfb0917a @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5064: 22850c1906550fb97b405c019275dcfb34be8cf7 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_13404: 22084aa7ae62eab32a33d827ace3c4989a52337f @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
22084aa7ae62 drm/i915/execlists: Disable preemption under GVT
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev5)
2019-06-24 10:30 ` ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev5) Patchwork
@ 2019-06-24 10:37 ` Chris Wilson
2019-06-24 10:45 ` Chris Wilson
0 siblings, 1 reply; 8+ messages in thread
From: Chris Wilson @ 2019-06-24 10:37 UTC (permalink / raw)
To: Patchwork; +Cc: intel-gfx
Quoting Patchwork (2019-06-24 11:30:47)
> == Series Details ==
>
> Series: drm/i915/execlists: Disable preemption under GVT (rev5)
> URL : https://patchwork.freedesktop.org/series/62533/
> State : failure
>
> == Summary ==
>
> CI Bug Log - changes from CI_DRM_6331 -> Patchwork_13404
> ====================================================
>
> Summary
> -------
>
> **FAILURE**
>
> Serious unknown changes coming with Patchwork_13404 absolutely need to be
> verified manually.
>
> If you think the reported changes have nothing to do with the changes
> introduced in Patchwork_13404, please notify your bug team to allow them
> to document this new failure mode, which will reduce false positives in CI.
>
> External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/
>
> Possible new issues
> -------------------
>
> Here are the unknown changes that may have been introduced in Patchwork_13404:
>
> ### IGT changes ###
>
> #### Possible regressions ####
>
> * igt@i915_selftest@live_execlists:
> - fi-kbl-7567u: [PASS][1] -> [INCOMPLETE][2]
> [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-7567u/igt@i915_selftest@live_execlists.html
> [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-kbl-7567u/igt@i915_selftest@live_execlists.html
> - fi-bsw-n3050: [PASS][3] -> [DMESG-FAIL][4]
> [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bsw-n3050/igt@i915_selftest@live_execlists.html
> [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-bsw-n3050/igt@i915_selftest@live_execlists.html
> - fi-bsw-kefka: [PASS][5] -> [DMESG-FAIL][6]
> [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bsw-kefka/igt@i915_selftest@live_execlists.html
> [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-bsw-kefka/igt@i915_selftest@live_execlists.html
> - fi-skl-6260u: [PASS][7] -> [INCOMPLETE][8]
> [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6260u/igt@i915_selftest@live_execlists.html
> [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-skl-6260u/igt@i915_selftest@live_execlists.html
> - fi-skl-6770hq: [PASS][9] -> [INCOMPLETE][10]
> [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6770hq/igt@i915_selftest@live_execlists.html
> [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-skl-6770hq/igt@i915_selftest@live_execlists.html
> - fi-bdw-5557u: [PASS][11] -> [DMESG-FAIL][12]
> [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bdw-5557u/igt@i915_selftest@live_execlists.html
> [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-bdw-5557u/igt@i915_selftest@live_execlists.html
> - fi-skl-lmem: [PASS][13] -> [INCOMPLETE][14]
> [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-lmem/igt@i915_selftest@live_execlists.html
> [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-skl-lmem/igt@i915_selftest@live_execlists.html
Sigh. Incompatible flags.
We want to keep preemption of busywaiting userspace semaphores.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev5)
2019-06-24 10:37 ` Chris Wilson
@ 2019-06-24 10:45 ` Chris Wilson
0 siblings, 0 replies; 8+ messages in thread
From: Chris Wilson @ 2019-06-24 10:45 UTC (permalink / raw)
To: Patchwork; +Cc: intel-gfx
Quoting Chris Wilson (2019-06-24 11:37:06)
> Quoting Patchwork (2019-06-24 11:30:47)
> > == Series Details ==
> >
> > Series: drm/i915/execlists: Disable preemption under GVT (rev5)
> > URL : https://patchwork.freedesktop.org/series/62533/
> > State : failure
> >
> > == Summary ==
> >
> > CI Bug Log - changes from CI_DRM_6331 -> Patchwork_13404
> > ====================================================
> >
> > Summary
> > -------
> >
> > **FAILURE**
> >
> > Serious unknown changes coming with Patchwork_13404 absolutely need to be
> > verified manually.
> >
> > If you think the reported changes have nothing to do with the changes
> > introduced in Patchwork_13404, please notify your bug team to allow them
> > to document this new failure mode, which will reduce false positives in CI.
> >
> > External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/
> >
> > Possible new issues
> > -------------------
> >
> > Here are the unknown changes that may have been introduced in Patchwork_13404:
> >
> > ### IGT changes ###
> >
> > #### Possible regressions ####
> >
> > * igt@i915_selftest@live_execlists:
> > - fi-kbl-7567u: [PASS][1] -> [INCOMPLETE][2]
> > [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-kbl-7567u/igt@i915_selftest@live_execlists.html
> > [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-kbl-7567u/igt@i915_selftest@live_execlists.html
> > - fi-bsw-n3050: [PASS][3] -> [DMESG-FAIL][4]
> > [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bsw-n3050/igt@i915_selftest@live_execlists.html
> > [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-bsw-n3050/igt@i915_selftest@live_execlists.html
> > - fi-bsw-kefka: [PASS][5] -> [DMESG-FAIL][6]
> > [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bsw-kefka/igt@i915_selftest@live_execlists.html
> > [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-bsw-kefka/igt@i915_selftest@live_execlists.html
> > - fi-skl-6260u: [PASS][7] -> [INCOMPLETE][8]
> > [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6260u/igt@i915_selftest@live_execlists.html
> > [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-skl-6260u/igt@i915_selftest@live_execlists.html
> > - fi-skl-6770hq: [PASS][9] -> [INCOMPLETE][10]
> > [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-6770hq/igt@i915_selftest@live_execlists.html
> > [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-skl-6770hq/igt@i915_selftest@live_execlists.html
> > - fi-bdw-5557u: [PASS][11] -> [DMESG-FAIL][12]
> > [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-bdw-5557u/igt@i915_selftest@live_execlists.html
> > [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-bdw-5557u/igt@i915_selftest@live_execlists.html
> > - fi-skl-lmem: [PASS][13] -> [INCOMPLETE][14]
> > [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6331/fi-skl-lmem/igt@i915_selftest@live_execlists.html
> > [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13404/fi-skl-lmem/igt@i915_selftest@live_execlists.html
>
> Sigh. Incompatible flags.
However, given that we know have regular bdw complaining because
preemption was disabled, we can conclude that bdwgvtdvm is not simply
freezing because of the emit_preempt_busywait.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v5] drm/i915/execlists: Disable preemption under GVT
2019-06-24 9:47 ` [PATCH v5] " Chris Wilson
@ 2019-06-25 5:02 ` Zhang, Xiaolin
0 siblings, 0 replies; 8+ messages in thread
From: Zhang, Xiaolin @ 2019-06-25 5:02 UTC (permalink / raw)
To: Chris Wilson, intel-gfx
On 06/24/2019 05:48 PM, Chris Wilson wrote:
> Preempt-to-busy uses a GPU semaphore to enforce an idle-barrier across
> preemption, but mediated gvt does not fully support semaphores.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> ---
> drivers/gpu/drm/i915/gt/intel_engine_cs.c | 4 ++--
> drivers/gpu/drm/i915/gt/intel_lrc.c | 21 ++++++++++++++++-----
> drivers/gpu/drm/i915/gt/selftest_lrc.c | 3 +++
> 3 files changed, 21 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> index 4961f74fd902..d6fbc47727c1 100644
> --- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> +++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> @@ -830,6 +830,8 @@ int intel_engine_init_common(struct intel_engine_cs *engine)
> struct drm_i915_private *i915 = engine->i915;
> int ret;
>
> + engine->set_default_submission(engine);
> +
> /* We may need to do things with the shrinker which
> * require us to immediately switch back to the default
> * context. This can cause a problem as pinning the
> @@ -857,8 +859,6 @@ int intel_engine_init_common(struct intel_engine_cs *engine)
>
> engine->emit_fini_breadcrumb_dw = ret;
>
> - engine->set_default_submission(engine);
> -
> return 0;
>
> err_unpin:
> diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c
> index c8a0c9b32764..8017efb36f7b 100644
> --- a/drivers/gpu/drm/i915/gt/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
> @@ -294,6 +294,9 @@ static inline bool need_preempt(const struct intel_engine_cs *engine,
> {
> int last_prio;
>
> + if (!intel_engine_has_preemption(engine))
> + return false;
> +
> /*
> * Check if the current priority hint merits a preemption attempt.
> *
> @@ -890,6 +893,9 @@ need_timeslice(struct intel_engine_cs *engine, const struct i915_request *rq)
> {
> int hint;
>
> + if (!intel_engine_has_preemption(engine))
> + return false;
> +
> if (list_is_last(&rq->sched.link, &engine->active.requests))
> return false;
>
> @@ -2600,7 +2606,8 @@ static u32 *gen8_emit_fini_breadcrumb(struct i915_request *request, u32 *cs)
> *cs++ = MI_USER_INTERRUPT;
>
> *cs++ = MI_ARB_ON_OFF | MI_ARB_ENABLE;
> - cs = emit_preempt_busywait(request, cs);
> + if (intel_engine_has_preemption(request->engine))
> + cs = emit_preempt_busywait(request, cs);
>
> request->tail = intel_ring_offset(request, cs);
> assert_ring_tail_valid(request->ring, request->tail);
> @@ -2624,7 +2631,8 @@ static u32 *gen8_emit_fini_breadcrumb_rcs(struct i915_request *request, u32 *cs)
> *cs++ = MI_USER_INTERRUPT;
>
> *cs++ = MI_ARB_ON_OFF | MI_ARB_ENABLE;
> - cs = emit_preempt_busywait(request, cs);
> + if (intel_engine_has_preemption(request->engine))
> + cs = emit_preempt_busywait(request, cs);
>
> request->tail = intel_ring_offset(request, cs);
> assert_ring_tail_valid(request->ring, request->tail);
> @@ -2672,10 +2680,11 @@ void intel_execlists_set_default_submission(struct intel_engine_cs *engine)
> engine->unpark = NULL;
>
> engine->flags |= I915_ENGINE_SUPPORTS_STATS;
> - if (!intel_vgpu_active(engine->i915))
> + if (!intel_vgpu_active(engine->i915)) {
> engine->flags |= I915_ENGINE_HAS_SEMAPHORES;
> - if (HAS_LOGICAL_RING_PREEMPTION(engine->i915))
> - engine->flags |= I915_ENGINE_HAS_PREEMPTION;
> + if (HAS_LOGICAL_RING_PREEMPTION(engine->i915))
> + engine->flags |= I915_ENGINE_HAS_PREEMPTION;
> + }
> }
>
> static void execlists_destroy(struct intel_engine_cs *engine)
> @@ -3463,6 +3472,8 @@ intel_execlists_create_virtual(struct i915_gem_context *ctx,
> ve->base.emit_fini_breadcrumb = sibling->emit_fini_breadcrumb;
> ve->base.emit_fini_breadcrumb_dw =
> sibling->emit_fini_breadcrumb_dw;
> +
> + ve->base.flags = sibling->flags;
> }
>
> return &ve->context;
> diff --git a/drivers/gpu/drm/i915/gt/selftest_lrc.c b/drivers/gpu/drm/i915/gt/selftest_lrc.c
> index 0c97f953e908..b99b589a6c81 100644
> --- a/drivers/gpu/drm/i915/gt/selftest_lrc.c
> +++ b/drivers/gpu/drm/i915/gt/selftest_lrc.c
> @@ -270,6 +270,9 @@ static int live_timeslice_preempt(void *arg)
> enum intel_engine_id id;
>
> for_each_engine(engine, i915, id) {
> + if (!intel_engine_has_preemption(engine))
> + continue;
> +
> memset(vaddr, 0, PAGE_SIZE);
>
> err = slice_semaphore_queue(engine, vma, count);
Tested-by: Xiaolin Zhang <xiaolin.zhang@intel.com>
with this patch, linux guest can boot up successfully with sanity test passed. But it is easy to get the GPU hang when running "vblank_mode=0 glxgears" in guest for about 4-5 mins. I believe this GPU hang is not caused by this patch, so it could be OK for next step.
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2019-06-25 5:02 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-24 9:02 [PATCH v3] drm/i915/execlists: Disable preemption under GVT Chris Wilson
2019-06-24 9:36 ` ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev3) Patchwork
2019-06-24 9:42 ` [PATCH v4] drm/i915/execlists: Disable preemption under GVT Chris Wilson
2019-06-24 9:47 ` [PATCH v5] " Chris Wilson
2019-06-25 5:02 ` Zhang, Xiaolin
2019-06-24 10:30 ` ✗ Fi.CI.BAT: failure for drm/i915/execlists: Disable preemption under GVT (rev5) Patchwork
2019-06-24 10:37 ` Chris Wilson
2019-06-24 10:45 ` Chris Wilson
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.