* [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).