* [Intel-gfx] [PATCH] drm/i915: Use locked access to ctx->engines in set_priority @ 2021-08-10 13:05 Daniel Vetter 2021-08-10 16:00 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for " Patchwork ` (3 more replies) 0 siblings, 4 replies; 6+ messages in thread From: Daniel Vetter @ 2021-08-10 13:05 UTC (permalink / raw) To: Intel Graphics Development Cc: DRI Development, Daniel Vetter, Daniel Vetter, Chris Wilson, Mika Kuoppala, Jason Ekstrand, Tvrtko Ursulin, Joonas Lahtinen, Matthew Brost This essentially reverts commit 89ff76bf9b3b0b86e6bbe344bd6378d8661303fc Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Thu Apr 2 13:42:18 2020 +0100 drm/i915/gem: Utilize rcu iteration of context engines Note that the other use of __context_engines_await have disappeard in the following commits: ccbc1b97948a ("drm/i915/gem: Don't allow changing the VM on running contexts (v4)") c7a71fc8ee04 ("drm/i915: Drop getparam support for I915_CONTEXT_PARAM_ENGINES") 4a766ae40ec8 ("drm/i915: Drop the CONTEXT_CLONE API (v2)") None of these have any business to optimize their engine lookup with rcu, unless extremely convincing benchmark data and a solid analysis why we can't make that workload (whatever it is that does) faster with a proper design fix. Also since there's only one caller of context_apply_all left and it's really just a loop, inline it and then inline the lopp body too. This is how all other callers that take the engine lock loop over engines, it's much simpler. Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Jason Ekstrand <jason@jlekstrand.net> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Cc: Matthew Brost <matthew.brost@intel.com> --- drivers/gpu/drm/i915/gem/i915_gem_context.c | 72 ++++----------------- 1 file changed, 14 insertions(+), 58 deletions(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context.c b/drivers/gpu/drm/i915/gem/i915_gem_context.c index dbaeb924a437..fd169cf2f75a 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_context.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_context.c @@ -1284,49 +1284,6 @@ static int __context_set_persistence(struct i915_gem_context *ctx, bool state) return 0; } -static inline struct i915_gem_engines * -__context_engines_await(const struct i915_gem_context *ctx, - bool *user_engines) -{ - struct i915_gem_engines *engines; - - rcu_read_lock(); - do { - engines = rcu_dereference(ctx->engines); - GEM_BUG_ON(!engines); - - if (user_engines) - *user_engines = i915_gem_context_user_engines(ctx); - - /* successful await => strong mb */ - if (unlikely(!i915_sw_fence_await(&engines->fence))) - continue; - - if (likely(engines == rcu_access_pointer(ctx->engines))) - break; - - i915_sw_fence_complete(&engines->fence); - } while (1); - rcu_read_unlock(); - - return engines; -} - -static void -context_apply_all(struct i915_gem_context *ctx, - void (*fn)(struct intel_context *ce, void *data), - void *data) -{ - struct i915_gem_engines_iter it; - struct i915_gem_engines *e; - struct intel_context *ce; - - e = __context_engines_await(ctx, NULL); - for_each_gem_engine(ce, e, it) - fn(ce, data); - i915_sw_fence_complete(&e->fence); -} - static struct i915_gem_context * i915_gem_create_context(struct drm_i915_private *i915, const struct i915_gem_proto_context *pc) @@ -1776,23 +1733,11 @@ set_persistence(struct i915_gem_context *ctx, return __context_set_persistence(ctx, args->value); } -static void __apply_priority(struct intel_context *ce, void *arg) -{ - struct i915_gem_context *ctx = arg; - - if (!intel_engine_has_timeslices(ce->engine)) - return; - - if (ctx->sched.priority >= I915_PRIORITY_NORMAL && - intel_engine_has_semaphores(ce->engine)) - intel_context_set_use_semaphores(ce); - else - intel_context_clear_use_semaphores(ce); -} - static int set_priority(struct i915_gem_context *ctx, const struct drm_i915_gem_context_param *args) { + struct i915_gem_engines_iter it; + struct intel_context *ce; int err; err = validate_priority(ctx->i915, args); @@ -1800,7 +1745,18 @@ static int set_priority(struct i915_gem_context *ctx, return err; ctx->sched.priority = args->value; - context_apply_all(ctx, __apply_priority, ctx); + + for_each_gem_engine(ce, i915_gem_context_lock_engines(ctx), it) { + if (!intel_engine_has_timeslices(ce->engine)) + continue; + + if (ctx->sched.priority >= I915_PRIORITY_NORMAL && + intel_engine_has_semaphores(ce->engine)) + intel_context_set_use_semaphores(ce); + else + intel_context_clear_use_semaphores(ce); + } + i915_gem_context_unlock_engines(ctx); return 0; } -- 2.32.0 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Use locked access to ctx->engines in set_priority 2021-08-10 13:05 [Intel-gfx] [PATCH] drm/i915: Use locked access to ctx->engines in set_priority Daniel Vetter @ 2021-08-10 16:00 ` Patchwork 2021-08-10 16:29 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork ` (2 subsequent siblings) 3 siblings, 0 replies; 6+ messages in thread From: Patchwork @ 2021-08-10 16:00 UTC (permalink / raw) To: Daniel Vetter; +Cc: intel-gfx == Series Details == Series: drm/i915: Use locked access to ctx->engines in set_priority URL : https://patchwork.freedesktop.org/series/93558/ State : warning == Summary == $ dim checkpatch origin/drm-tip cc99b1d7369b drm/i915: Use locked access to ctx->engines in set_priority -:8: ERROR:GIT_COMMIT_ID: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'commit 89ff76bf9b3b ("drm/i915/gem: Utilize rcu iteration of context engines")' #8: commit 89ff76bf9b3b0b86e6bbe344bd6378d8661303fc -:17: WARNING:COMMIT_LOG_LONG_LINE: Possible unwrapped commit description (prefer a maximum 75 chars per line) #17: ccbc1b97948a ("drm/i915/gem: Don't allow changing the VM on running contexts (v4)") -:17: ERROR:GIT_COMMIT_ID: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'commit ccbc1b97948a ("drm/i915/gem: Don't allow changing the VM on running contexts (v4)")' #17: ccbc1b97948a ("drm/i915/gem: Don't allow changing the VM on running contexts (v4)") -:18: ERROR:GIT_COMMIT_ID: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'commit c7a71fc8ee04 ("drm/i915: Drop getparam support for I915_CONTEXT_PARAM_ENGINES")' #18: c7a71fc8ee04 ("drm/i915: Drop getparam support for I915_CONTEXT_PARAM_ENGINES") -:19: ERROR:GIT_COMMIT_ID: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'commit 4a766ae40ec8 ("drm/i915: Drop the CONTEXT_CLONE API (v2)")' #19: 4a766ae40ec8 ("drm/i915: Drop the CONTEXT_CLONE API (v2)") -:139: WARNING:FROM_SIGN_OFF_MISMATCH: From:/Signed-off-by: email address mismatch: 'From: Daniel Vetter <daniel.vetter@ffwll.ch>' != 'Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>' total: 4 errors, 2 warnings, 0 checks, 93 lines checked ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Use locked access to ctx->engines in set_priority 2021-08-10 13:05 [Intel-gfx] [PATCH] drm/i915: Use locked access to ctx->engines in set_priority Daniel Vetter 2021-08-10 16:00 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for " Patchwork @ 2021-08-10 16:29 ` Patchwork 2021-08-10 23:02 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork 2021-08-12 15:09 ` [Intel-gfx] [PATCH] " Jason Ekstrand 3 siblings, 0 replies; 6+ messages in thread From: Patchwork @ 2021-08-10 16:29 UTC (permalink / raw) To: Daniel Vetter; +Cc: intel-gfx [-- Attachment #1: Type: text/plain, Size: 3761 bytes --] == Series Details == Series: drm/i915: Use locked access to ctx->engines in set_priority URL : https://patchwork.freedesktop.org/series/93558/ State : success == Summary == CI Bug Log - changes from CI_DRM_10465 -> Patchwork_20794 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/index.html Known issues ------------ Here are the changes found in Patchwork_20794 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@i915_pm_rpm@module-reload: - fi-rkl-guc: NOTRUN -> [SKIP][1] ([i915#3844] / [i915#579]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/fi-rkl-guc/igt@i915_pm_rpm@module-reload.html * igt@i915_selftest@live@workarounds: - fi-rkl-guc: NOTRUN -> [INCOMPLETE][2] ([i915#3920]) [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/fi-rkl-guc/igt@i915_selftest@live@workarounds.html #### Possible fixes #### * igt@core_hotunplug@unbind-rebind: - fi-rkl-guc: [DMESG-WARN][3] ([i915#3925]) -> [PASS][4] [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/fi-rkl-guc/igt@core_hotunplug@unbind-rebind.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/fi-rkl-guc/igt@core_hotunplug@unbind-rebind.html * igt@gem_exec_suspend@basic-s0: - fi-tgl-1115g4: [FAIL][5] ([i915#1888]) -> [PASS][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/fi-tgl-1115g4/igt@gem_exec_suspend@basic-s0.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/fi-tgl-1115g4/igt@gem_exec_suspend@basic-s0.html * igt@i915_selftest@live@hangcheck: - {fi-jsl-1}: [INCOMPLETE][7] -> [PASS][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/fi-jsl-1/igt@i915_selftest@live@hangcheck.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/fi-jsl-1/igt@i915_selftest@live@hangcheck.html * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a: - fi-rkl-11600: [SKIP][9] -> [PASS][10] +1 similar issue [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/fi-rkl-11600/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/fi-rkl-11600/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315 [fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080 [i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888 [i915#3844]: https://gitlab.freedesktop.org/drm/intel/issues/3844 [i915#3920]: https://gitlab.freedesktop.org/drm/intel/issues/3920 [i915#3925]: https://gitlab.freedesktop.org/drm/intel/issues/3925 [i915#579]: https://gitlab.freedesktop.org/drm/intel/issues/579 Participating hosts (37 -> 34) ------------------------------ Missing (3): fi-bdw-samus fi-bsw-cyan bat-jsl-1 Build changes ------------- * Linux: CI_DRM_10465 -> Patchwork_20794 CI-20190529: 20190529 CI_DRM_10465: b183cdc9ca5e84a70c1d9d57ab317319fb6bed65 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_6166: 63db0bc86c6321897ef829a5e7c9536a6f062b21 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git Patchwork_20794: cc99b1d7369b827a644c1fe30ab082ad7e10dca7 @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == cc99b1d7369b drm/i915: Use locked access to ctx->engines in set_priority == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/index.html [-- Attachment #2: Type: text/html, Size: 4393 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Use locked access to ctx->engines in set_priority 2021-08-10 13:05 [Intel-gfx] [PATCH] drm/i915: Use locked access to ctx->engines in set_priority Daniel Vetter 2021-08-10 16:00 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for " Patchwork 2021-08-10 16:29 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork @ 2021-08-10 23:02 ` Patchwork 2021-08-12 15:09 ` [Intel-gfx] [PATCH] " Jason Ekstrand 3 siblings, 0 replies; 6+ messages in thread From: Patchwork @ 2021-08-10 23:02 UTC (permalink / raw) To: Daniel Vetter; +Cc: intel-gfx [-- Attachment #1: Type: text/plain, Size: 30282 bytes --] == Series Details == Series: drm/i915: Use locked access to ctx->engines in set_priority URL : https://patchwork.freedesktop.org/series/93558/ State : success == Summary == CI Bug Log - changes from CI_DRM_10465_full -> Patchwork_20794_full ==================================================== Summary ------- **SUCCESS** No regressions found. Known issues ------------ Here are the changes found in Patchwork_20794_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_ctx_isolation@preservation-s3@rcs0: - shard-apl: NOTRUN -> [DMESG-WARN][1] ([i915#180]) +1 similar issue [1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl6/igt@gem_ctx_isolation@preservation-s3@rcs0.html * igt@gem_ctx_persistence@legacy-engines-mixed-process: - shard-snb: NOTRUN -> [SKIP][2] ([fdo#109271] / [i915#1099]) +6 similar issues [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-snb7/igt@gem_ctx_persistence@legacy-engines-mixed-process.html * igt@gem_eio@unwedge-stress: - shard-tglb: [PASS][3] -> [TIMEOUT][4] ([i915#2369] / [i915#3063] / [i915#3648]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-tglb3/igt@gem_eio@unwedge-stress.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-tglb3/igt@gem_eio@unwedge-stress.html - shard-iclb: [PASS][5] -> [TIMEOUT][6] ([i915#2369] / [i915#2481] / [i915#3070]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb1/igt@gem_eio@unwedge-stress.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb6/igt@gem_eio@unwedge-stress.html * igt@gem_exec_fair@basic-deadline: - shard-kbl: [PASS][7] -> [FAIL][8] ([i915#2846]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-kbl7/igt@gem_exec_fair@basic-deadline.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-kbl6/igt@gem_exec_fair@basic-deadline.html * igt@gem_exec_fair@basic-none-share@rcs0: - shard-kbl: [PASS][9] -> [SKIP][10] ([fdo#109271]) +1 similar issue [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-kbl6/igt@gem_exec_fair@basic-none-share@rcs0.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-kbl4/igt@gem_exec_fair@basic-none-share@rcs0.html - shard-apl: [PASS][11] -> [SKIP][12] ([fdo#109271]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-apl3/igt@gem_exec_fair@basic-none-share@rcs0.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl7/igt@gem_exec_fair@basic-none-share@rcs0.html * igt@gem_exec_fair@basic-pace-share@rcs0: - shard-tglb: [PASS][13] -> [FAIL][14] ([i915#2842]) +1 similar issue [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-tglb7/igt@gem_exec_fair@basic-pace-share@rcs0.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-tglb2/igt@gem_exec_fair@basic-pace-share@rcs0.html * igt@gem_exec_fair@basic-pace@vcs0: - shard-iclb: [PASS][15] -> [FAIL][16] ([i915#2842]) +1 similar issue [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb2/igt@gem_exec_fair@basic-pace@vcs0.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb5/igt@gem_exec_fair@basic-pace@vcs0.html * igt@gem_exec_fair@basic-throttle@rcs0: - shard-iclb: [PASS][17] -> [FAIL][18] ([i915#2849]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb6/igt@gem_exec_fair@basic-throttle@rcs0.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb4/igt@gem_exec_fair@basic-throttle@rcs0.html * igt@gem_huc_copy@huc-copy: - shard-kbl: NOTRUN -> [SKIP][19] ([fdo#109271] / [i915#2190]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-kbl4/igt@gem_huc_copy@huc-copy.html * igt@gem_pread@exhaustion: - shard-apl: NOTRUN -> [WARN][20] ([i915#2658]) [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl8/igt@gem_pread@exhaustion.html - shard-snb: NOTRUN -> [WARN][21] ([i915#2658]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-snb5/igt@gem_pread@exhaustion.html * igt@gem_workarounds@suspend-resume: - shard-skl: [PASS][22] -> [INCOMPLETE][23] ([i915#198]) [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl1/igt@gem_workarounds@suspend-resume.html [23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl5/igt@gem_workarounds@suspend-resume.html * igt@gen9_exec_parse@batch-invalid-length: - shard-tglb: NOTRUN -> [SKIP][24] ([i915#2856]) [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-tglb1/igt@gen9_exec_parse@batch-invalid-length.html * igt@i915_module_load@reload-with-fault-injection: - shard-skl: [PASS][25] -> [DMESG-WARN][26] ([i915#1982]) +2 similar issues [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl1/igt@i915_module_load@reload-with-fault-injection.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl9/igt@i915_module_load@reload-with-fault-injection.html * igt@i915_pm_rpm@basic-rte: - shard-apl: NOTRUN -> [FAIL][27] ([i915#579]) [27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl7/igt@i915_pm_rpm@basic-rte.html * igt@i915_suspend@forcewake: - shard-kbl: [PASS][28] -> [DMESG-WARN][29] ([i915#180]) +1 similar issue [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-kbl4/igt@i915_suspend@forcewake.html [29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-kbl6/igt@i915_suspend@forcewake.html * igt@kms_big_fb@y-tiled-32bpp-rotate-0: - shard-iclb: [PASS][30] -> [DMESG-WARN][31] ([i915#3621]) [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb5/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html [31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb1/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-async-flip: - shard-skl: NOTRUN -> [FAIL][32] ([i915#3722]) [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl5/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-async-flip.html * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0: - shard-apl: NOTRUN -> [SKIP][33] ([fdo#109271]) +197 similar issues [33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl7/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0.html * igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_mc_ccs: - shard-kbl: NOTRUN -> [SKIP][34] ([fdo#109271] / [i915#3886]) +2 similar issues [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-kbl3/igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_mc_ccs.html * igt@kms_ccs@pipe-c-bad-aux-stride-y_tiled_gen12_mc_ccs: - shard-skl: NOTRUN -> [SKIP][35] ([fdo#109271] / [i915#3886]) [35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl5/igt@kms_ccs@pipe-c-bad-aux-stride-y_tiled_gen12_mc_ccs.html * igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_mc_ccs: - shard-apl: NOTRUN -> [SKIP][36] ([fdo#109271] / [i915#3886]) +9 similar issues [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl8/igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html * igt@kms_chamelium@hdmi-hpd-for-each-pipe: - shard-kbl: NOTRUN -> [SKIP][37] ([fdo#109271] / [fdo#111827]) +5 similar issues [37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-kbl3/igt@kms_chamelium@hdmi-hpd-for-each-pipe.html * igt@kms_chamelium@vga-frame-dump: - shard-skl: NOTRUN -> [SKIP][38] ([fdo#109271] / [fdo#111827]) +9 similar issues [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl1/igt@kms_chamelium@vga-frame-dump.html * igt@kms_color_chamelium@pipe-c-ctm-max: - shard-apl: NOTRUN -> [SKIP][39] ([fdo#109271] / [fdo#111827]) +17 similar issues [39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl8/igt@kms_color_chamelium@pipe-c-ctm-max.html * igt@kms_color_chamelium@pipe-invalid-ctm-matrix-sizes: - shard-snb: NOTRUN -> [SKIP][40] ([fdo#109271] / [fdo#111827]) +24 similar issues [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-snb5/igt@kms_color_chamelium@pipe-invalid-ctm-matrix-sizes.html * igt@kms_content_protection@lic: - shard-kbl: NOTRUN -> [TIMEOUT][41] ([i915#1319]) [41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-kbl3/igt@kms_content_protection@lic.html * igt@kms_cursor_crc@pipe-b-cursor-32x32-onscreen: - shard-tglb: NOTRUN -> [SKIP][42] ([i915#3319]) [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-tglb1/igt@kms_cursor_crc@pipe-b-cursor-32x32-onscreen.html * igt@kms_cursor_edge_walk@pipe-d-128x128-right-edge: - shard-snb: NOTRUN -> [SKIP][43] ([fdo#109271]) +429 similar issues [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-snb5/igt@kms_cursor_edge_walk@pipe-d-128x128-right-edge.html * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size: - shard-skl: [PASS][44] -> [FAIL][45] ([i915#2346] / [i915#533]) [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl8/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html * igt@kms_cursor_legacy@flip-vs-cursor-toggle: - shard-skl: [PASS][46] -> [FAIL][47] ([i915#2346]) +1 similar issue [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl4/igt@kms_cursor_legacy@flip-vs-cursor-toggle.html [47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl4/igt@kms_cursor_legacy@flip-vs-cursor-toggle.html * igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1: - shard-skl: [PASS][48] -> [FAIL][49] ([i915#79]) +1 similar issue [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl9/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html [49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl10/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html * igt@kms_flip@flip-vs-expired-vblank-interruptible@c-hdmi-a1: - shard-glk: [PASS][50] -> [FAIL][51] ([i915#79]) [50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-glk9/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-hdmi-a1.html [51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-glk3/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-hdmi-a1.html * igt@kms_frontbuffer_tracking@fbc-1p-shrfb-fliptrack-mmap-gtt: - shard-skl: NOTRUN -> [SKIP][52] ([fdo#109271]) +59 similar issues [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl5/igt@kms_frontbuffer_tracking@fbc-1p-shrfb-fliptrack-mmap-gtt.html * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-blt: - shard-iclb: NOTRUN -> [SKIP][53] ([fdo#109280]) [53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb5/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-blt.html * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-pgflip-blt: - shard-tglb: NOTRUN -> [SKIP][54] ([fdo#111825]) +2 similar issues [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-tglb1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-pgflip-blt.html * igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-wc: - shard-kbl: NOTRUN -> [SKIP][55] ([fdo#109271]) +60 similar issues [55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-kbl4/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-wc.html * igt@kms_pipe_crc_basic@hang-read-crc-pipe-d: - shard-apl: NOTRUN -> [SKIP][56] ([fdo#109271] / [i915#533]) [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl2/igt@kms_pipe_crc_basic@hang-read-crc-pipe-d.html * igt@kms_plane_alpha_blend@pipe-a-alpha-basic: - shard-apl: NOTRUN -> [FAIL][57] ([fdo#108145] / [i915#265]) +4 similar issues [57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl7/igt@kms_plane_alpha_blend@pipe-a-alpha-basic.html * igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min: - shard-skl: [PASS][58] -> [FAIL][59] ([fdo#108145] / [i915#265]) [58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl6/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html [59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl3/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html * igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping: - shard-apl: NOTRUN -> [SKIP][60] ([fdo#109271] / [i915#2733]) [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl6/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping.html * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-1: - shard-tglb: NOTRUN -> [SKIP][61] ([i915#2920]) [61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-tglb1/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-1.html * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-4: - shard-apl: NOTRUN -> [SKIP][62] ([fdo#109271] / [i915#658]) +2 similar issues [62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl7/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-4.html * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-1: - shard-kbl: NOTRUN -> [SKIP][63] ([fdo#109271] / [i915#658]) [63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-kbl3/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-1.html * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-5: - shard-skl: NOTRUN -> [SKIP][64] ([fdo#109271] / [i915#658]) [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl5/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-5.html * igt@kms_psr@psr2_primary_page_flip: - shard-iclb: [PASS][65] -> [SKIP][66] ([fdo#109441]) +1 similar issue [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb2/igt@kms_psr@psr2_primary_page_flip.html [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb4/igt@kms_psr@psr2_primary_page_flip.html * igt@kms_vblank@pipe-d-ts-continuation-modeset-rpm: - shard-iclb: NOTRUN -> [SKIP][67] ([fdo#109278]) +1 similar issue [67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb5/igt@kms_vblank@pipe-d-ts-continuation-modeset-rpm.html * igt@kms_writeback@writeback-check-output: - shard-kbl: NOTRUN -> [SKIP][68] ([fdo#109271] / [i915#2437]) [68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-kbl4/igt@kms_writeback@writeback-check-output.html * igt@perf@polling-parameterized: - shard-glk: [PASS][69] -> [FAIL][70] ([i915#1542]) [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-glk9/igt@perf@polling-parameterized.html [70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-glk1/igt@perf@polling-parameterized.html * igt@sysfs_clients@busy: - shard-apl: NOTRUN -> [SKIP][71] ([fdo#109271] / [i915#2994]) +2 similar issues [71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-apl7/igt@sysfs_clients@busy.html * igt@sysfs_clients@split-25: - shard-skl: NOTRUN -> [SKIP][72] ([fdo#109271] / [i915#2994]) [72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl1/igt@sysfs_clients@split-25.html #### Possible fixes #### * igt@fbdev@nullptr: - {shard-rkl}: [SKIP][73] ([i915#2582]) -> [PASS][74] +1 similar issue [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@fbdev@nullptr.html [74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@fbdev@nullptr.html * igt@gem_eio@reset-stress: - {shard-rkl}: [FAIL][75] ([i915#3115]) -> [PASS][76] [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@gem_eio@reset-stress.html [76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-1/igt@gem_eio@reset-stress.html * igt@gem_exec_fair@basic-pace@rcs0: - shard-tglb: [FAIL][77] ([i915#2842]) -> [PASS][78] +1 similar issue [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-tglb1/igt@gem_exec_fair@basic-pace@rcs0.html [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-tglb1/igt@gem_exec_fair@basic-pace@rcs0.html * igt@gem_exec_fair@basic-throttle@rcs0: - shard-glk: [FAIL][79] ([i915#2842]) -> [PASS][80] [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-glk6/igt@gem_exec_fair@basic-throttle@rcs0.html [80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-glk7/igt@gem_exec_fair@basic-throttle@rcs0.html * igt@gem_exec_reloc@basic-gtt-cpu-noreloc: - shard-skl: [DMESG-WARN][81] ([i915#1982]) -> [PASS][82] [81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl8/igt@gem_exec_reloc@basic-gtt-cpu-noreloc.html [82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl3/igt@gem_exec_reloc@basic-gtt-cpu-noreloc.html * igt@gem_exec_suspend@basic-s4-devices: - {shard-rkl}: [INCOMPLETE][83] ([i915#3189] / [i915#3810]) -> [PASS][84] [83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-2/igt@gem_exec_suspend@basic-s4-devices.html [84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-1/igt@gem_exec_suspend@basic-s4-devices.html * igt@gem_mmap_wc@set-cache-level: - {shard-rkl}: [SKIP][85] ([i915#1850]) -> [PASS][86] [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@gem_mmap_wc@set-cache-level.html [86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@gem_mmap_wc@set-cache-level.html * igt@i915_pm_rpm@reg-read-ioctl: - {shard-rkl}: [SKIP][87] ([i915#3844] / [i915#579]) -> [PASS][88] +1 similar issue [87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-6/igt@i915_pm_rpm@reg-read-ioctl.html [88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-2/igt@i915_pm_rpm@reg-read-ioctl.html * igt@kms_big_fb@linear-8bpp-rotate-0: - {shard-rkl}: [SKIP][89] ([i915#3638]) -> [PASS][90] +4 similar issues [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@kms_big_fb@linear-8bpp-rotate-0.html [90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_big_fb@linear-8bpp-rotate-0.html * igt@kms_big_fb@y-tiled-16bpp-rotate-270: - {shard-rkl}: [SKIP][91] ([fdo#111614]) -> [PASS][92] [91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@kms_big_fb@y-tiled-16bpp-rotate-270.html [92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_big_fb@y-tiled-16bpp-rotate-270.html * igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180: - {shard-rkl}: [SKIP][93] ([i915#3721]) -> [PASS][94] +2 similar issues [93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180.html [94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180.html * igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc: - {shard-rkl}: [FAIL][95] ([i915#3678]) -> [PASS][96] +9 similar issues [95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html [96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html * igt@kms_color@pipe-c-ctm-negative: - {shard-rkl}: [SKIP][97] ([i915#1149] / [i915#1849]) -> [PASS][98] +4 similar issues [97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@kms_color@pipe-c-ctm-negative.html [98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_color@pipe-c-ctm-negative.html * igt@kms_cursor_crc@pipe-b-cursor-256x85-random: - {shard-rkl}: [SKIP][99] ([fdo#112022]) -> [PASS][100] +15 similar issues [99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@kms_cursor_crc@pipe-b-cursor-256x85-random.html [100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_cursor_crc@pipe-b-cursor-256x85-random.html * igt@kms_cursor_legacy@flip-vs-cursor-crc-atomic: - {shard-rkl}: [SKIP][101] ([fdo#111825]) -> [PASS][102] +3 similar issues [101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-5/igt@kms_cursor_legacy@flip-vs-cursor-crc-atomic.html [102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_cursor_legacy@flip-vs-cursor-crc-atomic.html * igt@kms_dp_aux_dev: - {shard-rkl}: [SKIP][103] ([i915#1257]) -> [PASS][104] [103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@kms_dp_aux_dev.html [104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_dp_aux_dev.html * igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled: - {shard-rkl}: [SKIP][105] ([fdo#111314]) -> [PASS][106] +7 similar issues [105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled.html [106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled.html * igt@kms_flip@flip-vs-suspend@c-dp1: - shard-kbl: [DMESG-WARN][107] ([i915#180]) -> [PASS][108] +2 similar issues [107]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-kbl1/igt@kms_flip@flip-vs-suspend@c-dp1.html [108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-kbl3/igt@kms_flip@flip-vs-suspend@c-dp1.html * igt@kms_flip@plain-flip-fb-recreate-interruptible@c-edp1: - shard-skl: [FAIL][109] ([i915#2122]) -> [PASS][110] +2 similar issues [109]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl1/igt@kms_flip@plain-flip-fb-recreate-interruptible@c-edp1.html [110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl9/igt@kms_flip@plain-flip-fb-recreate-interruptible@c-edp1.html * igt@kms_frontbuffer_tracking@basic: - {shard-rkl}: [SKIP][111] ([i915#1849] / [i915#3180]) -> [PASS][112] [111]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-5/igt@kms_frontbuffer_tracking@basic.html [112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_frontbuffer_tracking@basic.html * igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw: - {shard-rkl}: [SKIP][113] ([i915#1849]) -> [PASS][114] +49 similar issues [113]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-5/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html [114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html * igt@kms_hdr@bpc-switch-dpms: - shard-skl: [FAIL][115] ([i915#1188]) -> [PASS][116] [115]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl8/igt@kms_hdr@bpc-switch-dpms.html [116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl3/igt@kms_hdr@bpc-switch-dpms.html * igt@kms_hdr@bpc-switch-suspend: - shard-skl: [INCOMPLETE][117] ([i915#198] / [i915#2828]) -> [PASS][118] [117]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl5/igt@kms_hdr@bpc-switch-suspend.html [118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl1/igt@kms_hdr@bpc-switch-suspend.html * igt@kms_plane_alpha_blend@pipe-b-coverage-7efc: - shard-skl: [FAIL][119] ([fdo#108145] / [i915#265]) -> [PASS][120] +2 similar issues [119]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl2/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html [120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl7/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html * igt@kms_plane_multiple@atomic-pipe-c-tiling-none: - {shard-rkl}: [SKIP][121] ([i915#3558]) -> [PASS][122] +3 similar issues [121]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@kms_plane_multiple@atomic-pipe-c-tiling-none.html [122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_plane_multiple@atomic-pipe-c-tiling-none.html * igt@kms_psr2_su@page_flip: - shard-iclb: [SKIP][123] ([fdo#109642] / [fdo#111068] / [i915#658]) -> [PASS][124] [123]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb8/igt@kms_psr2_su@page_flip.html [124]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb2/igt@kms_psr2_su@page_flip.html * igt@kms_psr@psr2_suspend: - shard-iclb: [SKIP][125] ([fdo#109441]) -> [PASS][126] +1 similar issue [125]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb8/igt@kms_psr@psr2_suspend.html [126]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb2/igt@kms_psr@psr2_suspend.html * igt@kms_psr@sprite_render: - {shard-rkl}: [SKIP][127] ([i915#1072]) -> [PASS][128] +3 similar issues [127]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@kms_psr@sprite_render.html [128]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_psr@sprite_render.html * igt@kms_vblank@pipe-a-ts-continuation-modeset: - {shard-rkl}: [SKIP][129] ([i915#1845]) -> [PASS][130] +36 similar issues [129]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-5/igt@kms_vblank@pipe-a-ts-continuation-modeset.html [130]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_vblank@pipe-a-ts-continuation-modeset.html * igt@kms_vblank@pipe-b-query-busy-hang: - {shard-rkl}: [SKIP][131] ([i915#1845] / [i915#3149]) -> [PASS][132] [131]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-1/igt@kms_vblank@pipe-b-query-busy-hang.html [132]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@kms_vblank@pipe-b-query-busy-hang.html * igt@perf@polling-parameterized: - shard-skl: [FAIL][133] ([i915#1542]) -> [PASS][134] [133]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-skl8/igt@perf@polling-parameterized.html [134]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-skl7/igt@perf@polling-parameterized.html * igt@perf@polling-small-buf: - {shard-rkl}: [FAIL][135] ([i915#1722]) -> [PASS][136] [135]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-rkl-5/igt@perf@polling-small-buf.html [136]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-rkl-6/igt@perf@polling-small-buf.html #### Warnings #### * igt@i915_pm_rc6_residency@rc6-fence: - shard-iclb: [WARN][137] ([i915#2684]) -> [WARN][138] ([i915#1804] / [i915#2684]) [137]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb2/igt@i915_pm_rc6_residency@rc6-fence.html [138]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb4/igt@i915_pm_rc6_residency@rc6-fence.html * igt@kms_psr2_sf@cursor-plane-update-sf: - shard-iclb: [SKIP][139] ([i915#658]) -> [SKIP][140] ([i915#2920]) [139]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb8/igt@kms_psr2_sf@cursor-plane-update-sf.html [140]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb2/igt@kms_psr2_sf@cursor-plane-update-sf.html * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-1: - shard-iclb: [SKIP][141] ([i915#2920]) -> [SKIP][142] ([i915#658]) +2 similar issues [141]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb2/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-1.html [142]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb5/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-1.html * igt@runner@aborted: - shard-iclb: ([FAIL][143], [FAIL][144]) ([i915#3002]) -> ([FAIL][145], [FAIL][146], [FAIL][147]) ([i915#1814] / [i915#3002]) [143]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb8/igt@runner@aborted.html [144]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10465/shard-iclb4/igt@runner@aborted.html [145]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb1/igt@runner@aborted.html [146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb2/igt@runner@aborted.html [147]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/shard-iclb1/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). [fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375 [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109278]: https://bugs.freedesktop.org/show_bu == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20794/index.html [-- Attachment #2: Type: text/html, Size: 34727 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915: Use locked access to ctx->engines in set_priority 2021-08-10 13:05 [Intel-gfx] [PATCH] drm/i915: Use locked access to ctx->engines in set_priority Daniel Vetter ` (2 preceding siblings ...) 2021-08-10 23:02 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork @ 2021-08-12 15:09 ` Jason Ekstrand 2021-08-12 15:30 ` Daniel Vetter 3 siblings, 1 reply; 6+ messages in thread From: Jason Ekstrand @ 2021-08-12 15:09 UTC (permalink / raw) To: Daniel Vetter Cc: Intel Graphics Development, DRI Development, Daniel Vetter, Chris Wilson, Mika Kuoppala, Tvrtko Ursulin, Joonas Lahtinen, Matthew Brost On Tue, Aug 10, 2021 at 8:05 AM Daniel Vetter <daniel.vetter@ffwll.ch> wrote: > > This essentially reverts > > commit 89ff76bf9b3b0b86e6bbe344bd6378d8661303fc > Author: Chris Wilson <chris@chris-wilson.co.uk> > Date: Thu Apr 2 13:42:18 2020 +0100 > > drm/i915/gem: Utilize rcu iteration of context engines > > Note that the other use of __context_engines_await have disappeard in > the following commits: > > ccbc1b97948a ("drm/i915/gem: Don't allow changing the VM on running contexts (v4)") > c7a71fc8ee04 ("drm/i915: Drop getparam support for I915_CONTEXT_PARAM_ENGINES") > 4a766ae40ec8 ("drm/i915: Drop the CONTEXT_CLONE API (v2)") > > None of these have any business to optimize their engine lookup with > rcu, unless extremely convincing benchmark data and a solid analysis > why we can't make that workload (whatever it is that does) faster with > a proper design fix. > > Also since there's only one caller of context_apply_all left and it's > really just a loop, inline it and then inline the lopp body too. This > is how all other callers that take the engine lock loop over engines, > it's much simpler. > > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> > Cc: Chris Wilson <chris@chris-wilson.co.uk> > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> > Cc: Daniel Vetter <daniel.vetter@ffwll.ch> > Cc: Jason Ekstrand <jason@jlekstrand.net> > Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> > Cc: Matthew Brost <matthew.brost@intel.com> > --- > drivers/gpu/drm/i915/gem/i915_gem_context.c | 72 ++++----------------- > 1 file changed, 14 insertions(+), 58 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context.c b/drivers/gpu/drm/i915/gem/i915_gem_context.c > index dbaeb924a437..fd169cf2f75a 100644 > --- a/drivers/gpu/drm/i915/gem/i915_gem_context.c > +++ b/drivers/gpu/drm/i915/gem/i915_gem_context.c > @@ -1284,49 +1284,6 @@ static int __context_set_persistence(struct i915_gem_context *ctx, bool state) > return 0; > } > > -static inline struct i915_gem_engines * > -__context_engines_await(const struct i915_gem_context *ctx, > - bool *user_engines) > -{ > - struct i915_gem_engines *engines; > - > - rcu_read_lock(); > - do { > - engines = rcu_dereference(ctx->engines); > - GEM_BUG_ON(!engines); > - > - if (user_engines) > - *user_engines = i915_gem_context_user_engines(ctx); > - > - /* successful await => strong mb */ > - if (unlikely(!i915_sw_fence_await(&engines->fence))) Ugh... The first time I looked at this I thought the SW fence meant it was actually waiting on something. But, no, it's just making sure the engines object still exists. *sigh* Burn it! Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> > - continue; > - > - if (likely(engines == rcu_access_pointer(ctx->engines))) > - break; > - > - i915_sw_fence_complete(&engines->fence); > - } while (1); > - rcu_read_unlock(); > - > - return engines; > -} > - > -static void > -context_apply_all(struct i915_gem_context *ctx, > - void (*fn)(struct intel_context *ce, void *data), > - void *data) > -{ > - struct i915_gem_engines_iter it; > - struct i915_gem_engines *e; > - struct intel_context *ce; > - > - e = __context_engines_await(ctx, NULL); > - for_each_gem_engine(ce, e, it) > - fn(ce, data); > - i915_sw_fence_complete(&e->fence); > -} > - > static struct i915_gem_context * > i915_gem_create_context(struct drm_i915_private *i915, > const struct i915_gem_proto_context *pc) > @@ -1776,23 +1733,11 @@ set_persistence(struct i915_gem_context *ctx, > return __context_set_persistence(ctx, args->value); > } > > -static void __apply_priority(struct intel_context *ce, void *arg) > -{ > - struct i915_gem_context *ctx = arg; > - > - if (!intel_engine_has_timeslices(ce->engine)) > - return; > - > - if (ctx->sched.priority >= I915_PRIORITY_NORMAL && > - intel_engine_has_semaphores(ce->engine)) > - intel_context_set_use_semaphores(ce); > - else > - intel_context_clear_use_semaphores(ce); > -} > - > static int set_priority(struct i915_gem_context *ctx, > const struct drm_i915_gem_context_param *args) > { > + struct i915_gem_engines_iter it; > + struct intel_context *ce; > int err; > > err = validate_priority(ctx->i915, args); > @@ -1800,7 +1745,18 @@ static int set_priority(struct i915_gem_context *ctx, > return err; > > ctx->sched.priority = args->value; > - context_apply_all(ctx, __apply_priority, ctx); > + > + for_each_gem_engine(ce, i915_gem_context_lock_engines(ctx), it) { > + if (!intel_engine_has_timeslices(ce->engine)) > + continue; > + > + if (ctx->sched.priority >= I915_PRIORITY_NORMAL && > + intel_engine_has_semaphores(ce->engine)) > + intel_context_set_use_semaphores(ce); > + else > + intel_context_clear_use_semaphores(ce); > + } > + i915_gem_context_unlock_engines(ctx); > > return 0; > } > -- > 2.32.0 > ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915: Use locked access to ctx->engines in set_priority 2021-08-12 15:09 ` [Intel-gfx] [PATCH] " Jason Ekstrand @ 2021-08-12 15:30 ` Daniel Vetter 0 siblings, 0 replies; 6+ messages in thread From: Daniel Vetter @ 2021-08-12 15:30 UTC (permalink / raw) To: Jason Ekstrand Cc: Intel Graphics Development, DRI Development, Daniel Vetter, Chris Wilson, Mika Kuoppala, Tvrtko Ursulin, Joonas Lahtinen, Matthew Brost On Thu, Aug 12, 2021 at 5:10 PM Jason Ekstrand <jason@jlekstrand.net> wrote: > On Tue, Aug 10, 2021 at 8:05 AM Daniel Vetter <daniel.vetter@ffwll.ch> wrote: > > > > This essentially reverts > > > > commit 89ff76bf9b3b0b86e6bbe344bd6378d8661303fc > > Author: Chris Wilson <chris@chris-wilson.co.uk> > > Date: Thu Apr 2 13:42:18 2020 +0100 > > > > drm/i915/gem: Utilize rcu iteration of context engines > > > > Note that the other use of __context_engines_await have disappeard in > > the following commits: > > > > ccbc1b97948a ("drm/i915/gem: Don't allow changing the VM on running contexts (v4)") > > c7a71fc8ee04 ("drm/i915: Drop getparam support for I915_CONTEXT_PARAM_ENGINES") > > 4a766ae40ec8 ("drm/i915: Drop the CONTEXT_CLONE API (v2)") > > > > None of these have any business to optimize their engine lookup with > > rcu, unless extremely convincing benchmark data and a solid analysis > > why we can't make that workload (whatever it is that does) faster with > > a proper design fix. > > > > Also since there's only one caller of context_apply_all left and it's > > really just a loop, inline it and then inline the lopp body too. This > > is how all other callers that take the engine lock loop over engines, > > it's much simpler. > > > > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> > > Cc: Chris Wilson <chris@chris-wilson.co.uk> > > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> > > Cc: Daniel Vetter <daniel.vetter@ffwll.ch> > > Cc: Jason Ekstrand <jason@jlekstrand.net> > > Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> > > Cc: Matthew Brost <matthew.brost@intel.com> > > --- > > drivers/gpu/drm/i915/gem/i915_gem_context.c | 72 ++++----------------- > > 1 file changed, 14 insertions(+), 58 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context.c b/drivers/gpu/drm/i915/gem/i915_gem_context.c > > index dbaeb924a437..fd169cf2f75a 100644 > > --- a/drivers/gpu/drm/i915/gem/i915_gem_context.c > > +++ b/drivers/gpu/drm/i915/gem/i915_gem_context.c > > @@ -1284,49 +1284,6 @@ static int __context_set_persistence(struct i915_gem_context *ctx, bool state) > > return 0; > > } > > > > -static inline struct i915_gem_engines * > > -__context_engines_await(const struct i915_gem_context *ctx, > > - bool *user_engines) > > -{ > > - struct i915_gem_engines *engines; > > - > > - rcu_read_lock(); > > - do { > > - engines = rcu_dereference(ctx->engines); > > - GEM_BUG_ON(!engines); > > - > > - if (user_engines) > > - *user_engines = i915_gem_context_user_engines(ctx); > > - > > - /* successful await => strong mb */ > > - if (unlikely(!i915_sw_fence_await(&engines->fence))) > > Ugh... The first time I looked at this I thought the SW fence meant it > was actually waiting on something. But, no, it's just making sure the > engines object still exists. *sigh* Burn it! ... why did you force me to page this in again, I already forgot. > Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Merged to drm-intel-gt-next, thanks for the review. -Daniel > > > - continue; > > - > > - if (likely(engines == rcu_access_pointer(ctx->engines))) > > - break; > > - > > - i915_sw_fence_complete(&engines->fence); > > - } while (1); > > - rcu_read_unlock(); > > - > > - return engines; > > -} > > - > > -static void > > -context_apply_all(struct i915_gem_context *ctx, > > - void (*fn)(struct intel_context *ce, void *data), > > - void *data) > > -{ > > - struct i915_gem_engines_iter it; > > - struct i915_gem_engines *e; > > - struct intel_context *ce; > > - > > - e = __context_engines_await(ctx, NULL); > > - for_each_gem_engine(ce, e, it) > > - fn(ce, data); > > - i915_sw_fence_complete(&e->fence); > > -} > > - > > static struct i915_gem_context * > > i915_gem_create_context(struct drm_i915_private *i915, > > const struct i915_gem_proto_context *pc) > > @@ -1776,23 +1733,11 @@ set_persistence(struct i915_gem_context *ctx, > > return __context_set_persistence(ctx, args->value); > > } > > > > -static void __apply_priority(struct intel_context *ce, void *arg) > > -{ > > - struct i915_gem_context *ctx = arg; > > - > > - if (!intel_engine_has_timeslices(ce->engine)) > > - return; > > - > > - if (ctx->sched.priority >= I915_PRIORITY_NORMAL && > > - intel_engine_has_semaphores(ce->engine)) > > - intel_context_set_use_semaphores(ce); > > - else > > - intel_context_clear_use_semaphores(ce); > > -} > > - > > static int set_priority(struct i915_gem_context *ctx, > > const struct drm_i915_gem_context_param *args) > > { > > + struct i915_gem_engines_iter it; > > + struct intel_context *ce; > > int err; > > > > err = validate_priority(ctx->i915, args); > > @@ -1800,7 +1745,18 @@ static int set_priority(struct i915_gem_context *ctx, > > return err; > > > > ctx->sched.priority = args->value; > > - context_apply_all(ctx, __apply_priority, ctx); > > + > > + for_each_gem_engine(ce, i915_gem_context_lock_engines(ctx), it) { > > + if (!intel_engine_has_timeslices(ce->engine)) > > + continue; > > + > > + if (ctx->sched.priority >= I915_PRIORITY_NORMAL && > > + intel_engine_has_semaphores(ce->engine)) > > + intel_context_set_use_semaphores(ce); > > + else > > + intel_context_clear_use_semaphores(ce); > > + } > > + i915_gem_context_unlock_engines(ctx); > > > > return 0; > > } > > -- > > 2.32.0 > > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2021-08-12 15:30 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-08-10 13:05 [Intel-gfx] [PATCH] drm/i915: Use locked access to ctx->engines in set_priority Daniel Vetter 2021-08-10 16:00 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for " Patchwork 2021-08-10 16:29 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork 2021-08-10 23:02 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork 2021-08-12 15:09 ` [Intel-gfx] [PATCH] " Jason Ekstrand 2021-08-12 15:30 ` Daniel Vetter
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).