All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 0/1] tests/i915/gem_ctx_persistence: Set context with supported engines
@ 2020-01-09  8:50 Bommu Krishnaiah
  2020-01-09  8:50 ` [igt-dev] [PATCH i-g-t 1/1] " Bommu Krishnaiah
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Bommu Krishnaiah @ 2020-01-09  8:50 UTC (permalink / raw)
  To: igt-dev; +Cc: Bommu Krishnaiah

Update the context with supported engines on the platform with set_property
I915_CONTEXT_PARAM_ENGINES to make sure the work load is submitted to
the available engines only.

Bommu Krishnaiah (1):
  tests/i915/gem_ctx_persistence: Set context with supported engines

 tests/i915/gem_ctx_persistence.c | 34 ++++++++++++++++++--------------
 1 file changed, 19 insertions(+), 15 deletions(-)

-- 
2.24.0

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [igt-dev] [PATCH i-g-t 1/1] tests/i915/gem_ctx_persistence: Set context with supported engines
  2020-01-09  8:50 [igt-dev] [PATCH i-g-t 0/1] tests/i915/gem_ctx_persistence: Set context with supported engines Bommu Krishnaiah
@ 2020-01-09  8:50 ` Bommu Krishnaiah
  2020-01-09  9:18   ` Chris Wilson
  2020-01-09 10:45 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
  2020-01-09 20:37 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  2 siblings, 1 reply; 8+ messages in thread
From: Bommu Krishnaiah @ 2020-01-09  8:50 UTC (permalink / raw)
  To: igt-dev; +Cc: Bommu Krishnaiah, Tvrtko Ursulin

Update the context with supported engines on the platform with set_property
I915_CONTEXT_PARAM_ENGINES to make sure the work load is submitted to
the available engines only.

Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Signed-off-by: Bommu Krishnaiah <krishnaiah.bommu@intel.com>
---
 tests/i915/gem_ctx_persistence.c | 34 ++++++++++++++++++--------------
 1 file changed, 19 insertions(+), 15 deletions(-)

diff --git a/tests/i915/gem_ctx_persistence.c b/tests/i915/gem_ctx_persistence.c
index d68431ae..e410e85f 100644
--- a/tests/i915/gem_ctx_persistence.c
+++ b/tests/i915/gem_ctx_persistence.c
@@ -145,6 +145,15 @@ static void test_clone(int i915)
 	gem_context_destroy(i915, clone);
 }
 
+static uint32_t create_context(int i915, bool persistent)
+{
+	uint32_t ctx;
+
+	ctx = gem_context_create(i915);
+	gem_context_set_persistence(i915, ctx, persistent);
+	gem_context_set_all_engines(i915, ctx);
+	return ctx;
+}
 static void test_persistence(int i915, unsigned int engine)
 {
 	igt_spin_t *spin;
@@ -156,8 +165,7 @@ static void test_persistence(int i915, unsigned int engine)
 	 * request is retired -- no early termination.
 	 */
 
-	ctx = gem_context_create(i915);
-	gem_context_set_persistence(i915, ctx, true);
+	ctx = create_context(i915, true);
 
 	spin = igt_spin_new(i915, ctx,
 			    .engine = engine,
@@ -188,8 +196,7 @@ static void test_nonpersistent_cleanup(int i915, unsigned int engine)
 	 * any inflight request is cancelled.
 	 */
 
-	ctx = gem_context_create(i915);
-	gem_context_set_persistence(i915, ctx, false);
+	ctx = create_context(i915, false);
 
 	spin = igt_spin_new(i915, ctx,
 			    .engine = engine,
@@ -217,8 +224,7 @@ static void test_nonpersistent_mixed(int i915, unsigned int engine)
 		igt_spin_t *spin;
 		uint32_t ctx;
 
-		ctx = gem_context_create(i915);
-		gem_context_set_persistence(i915, ctx, i & 1);
+		ctx = create_context(i915, i & 1);
 
 		spin = igt_spin_new(i915, ctx,
 				    .engine = engine,
@@ -253,8 +259,7 @@ static void test_nonpersistent_hostile(int i915, unsigned int engine)
 	 * the requests and cleanup the context.
 	 */
 
-	ctx = gem_context_create(i915);
-	gem_context_set_persistence(i915, ctx, false);
+	ctx = create_context(i915, false);
 
 	spin = igt_spin_new(i915, ctx,
 			    .engine = engine,
@@ -284,8 +289,8 @@ static void test_nonpersistent_hostile_preempt(int i915, unsigned int engine)
 
 	igt_require(gem_scheduler_has_preemption(i915));
 
-	ctx = gem_context_create(i915);
-	gem_context_set_persistence(i915, ctx, true);
+	ctx = create_context(i915, true);
+
 	gem_context_set_priority(i915, ctx, 0);
 	spin[0] = igt_spin_new(i915, ctx,
 			       .engine = engine,
@@ -385,8 +390,8 @@ static void test_nonpersistent_queued(int i915, unsigned int engine)
 
 	gem_quiescent_gpu(i915);
 
-	ctx = gem_context_create(i915);
-	gem_context_set_persistence(i915, ctx, false);
+	ctx = create_context(i915, false);
+
 	spin = igt_spin_new(i915, ctx,
 			    .engine = engine,
 			    .flags = IGT_SPIN_FENCE_OUT);
@@ -512,8 +517,7 @@ static void test_process_mixed(int i915, unsigned int engine)
 			igt_spin_t *spin;
 			uint32_t ctx;
 
-			ctx = gem_context_create(i915);
-			gem_context_set_persistence(i915, ctx, persists);
+			ctx = create_context(i915, persists);
 
 			spin = igt_spin_new(i915, ctx,
 					    .engine = engine,
@@ -727,7 +731,7 @@ igt_main
 	igt_subtest("hangcheck")
 		test_nohangcheck_hostile(i915);
 
-	__for_each_static_engine(e) {
+	__for_each_physical_engine(i915, e) {
 		igt_subtest_group {
 			igt_fixture {
 				gem_require_ring(i915, e->flags);
-- 
2.24.0

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 1/1] tests/i915/gem_ctx_persistence: Set context with supported engines
  2020-01-09  8:50 ` [igt-dev] [PATCH i-g-t 1/1] " Bommu Krishnaiah
@ 2020-01-09  9:18   ` Chris Wilson
  2020-01-10 10:56     ` Tvrtko Ursulin
  0 siblings, 1 reply; 8+ messages in thread
From: Chris Wilson @ 2020-01-09  9:18 UTC (permalink / raw)
  To: Bommu Krishnaiah, igt-dev; +Cc: Bommu Krishnaiah, Tvrtko Ursulin

Quoting Bommu Krishnaiah (2020-01-09 08:50:23)
> Update the context with supported engines on the platform with set_property
> I915_CONTEXT_PARAM_ENGINES to make sure the work load is submitted to
> the available engines only.
> 
> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> Signed-off-by: Bommu Krishnaiah <krishnaiah.bommu@intel.com>
> ---
>  tests/i915/gem_ctx_persistence.c | 34 ++++++++++++++++++--------------
>  1 file changed, 19 insertions(+), 15 deletions(-)
> 
> diff --git a/tests/i915/gem_ctx_persistence.c b/tests/i915/gem_ctx_persistence.c
> index d68431ae..e410e85f 100644
> --- a/tests/i915/gem_ctx_persistence.c
> +++ b/tests/i915/gem_ctx_persistence.c
> @@ -145,6 +145,15 @@ static void test_clone(int i915)
>         gem_context_destroy(i915, clone);
>  }
>  
> +static uint32_t create_context(int i915, bool persistent)
> +{
> +       uint32_t ctx;
> +
> +       ctx = gem_context_create(i915);
> +       gem_context_set_persistence(i915, ctx, persistent);
> +       gem_context_set_all_engines(i915, ctx);

Really? We only need a single engine, could you not be a little more
precise.

> +       return ctx;
> +}
>  static void test_persistence(int i915, unsigned int engine)
>  {
>         igt_spin_t *spin;
> @@ -156,8 +165,7 @@ static void test_persistence(int i915, unsigned int engine)
>          * request is retired -- no early termination.
>          */
>  
> -       ctx = gem_context_create(i915);
> -       gem_context_set_persistence(i915, ctx, true);
> +       ctx = create_context(i915, true);
>  
>         spin = igt_spin_new(i915, ctx,
>                             .engine = engine,
> @@ -188,8 +196,7 @@ static void test_nonpersistent_cleanup(int i915, unsigned int engine)
>          * any inflight request is cancelled.
>          */
>  
> -       ctx = gem_context_create(i915);
> -       gem_context_set_persistence(i915, ctx, false);
> +       ctx = create_context(i915, false);
>  
>         spin = igt_spin_new(i915, ctx,
>                             .engine = engine,
> @@ -217,8 +224,7 @@ static void test_nonpersistent_mixed(int i915, unsigned int engine)
>                 igt_spin_t *spin;
>                 uint32_t ctx;
>  
> -               ctx = gem_context_create(i915);
> -               gem_context_set_persistence(i915, ctx, i & 1);
> +               ctx = create_context(i915, i & 1);
>  
>                 spin = igt_spin_new(i915, ctx,
>                                     .engine = engine,
> @@ -253,8 +259,7 @@ static void test_nonpersistent_hostile(int i915, unsigned int engine)
>          * the requests and cleanup the context.
>          */
>  
> -       ctx = gem_context_create(i915);
> -       gem_context_set_persistence(i915, ctx, false);
> +       ctx = create_context(i915, false);
>  
>         spin = igt_spin_new(i915, ctx,
>                             .engine = engine,
> @@ -284,8 +289,8 @@ static void test_nonpersistent_hostile_preempt(int i915, unsigned int engine)
>  
>         igt_require(gem_scheduler_has_preemption(i915));
>  
> -       ctx = gem_context_create(i915);
> -       gem_context_set_persistence(i915, ctx, true);
> +       ctx = create_context(i915, true);
> +
>         gem_context_set_priority(i915, ctx, 0);
>         spin[0] = igt_spin_new(i915, ctx,
>                                .engine = engine,
> @@ -385,8 +390,8 @@ static void test_nonpersistent_queued(int i915, unsigned int engine)
>  
>         gem_quiescent_gpu(i915);
>  
> -       ctx = gem_context_create(i915);
> -       gem_context_set_persistence(i915, ctx, false);
> +       ctx = create_context(i915, false);
> +
>         spin = igt_spin_new(i915, ctx,
>                             .engine = engine,
>                             .flags = IGT_SPIN_FENCE_OUT);
> @@ -512,8 +517,7 @@ static void test_process_mixed(int i915, unsigned int engine)
>                         igt_spin_t *spin;
>                         uint32_t ctx;
>  
> -                       ctx = gem_context_create(i915);
> -                       gem_context_set_persistence(i915, ctx, persists);
> +                       ctx = create_context(i915, persists);
>  
>                         spin = igt_spin_new(i915, ctx,
>                                             .engine = engine,
> @@ -727,7 +731,7 @@ igt_main
>         igt_subtest("hangcheck")
>                 test_nohangcheck_hostile(i915);
>  
> -       __for_each_static_engine(e) {
> +       __for_each_physical_engine(i915, e) {

Please note this has to check ABI. We have to confirm that no matter how
the user tries to fool us, they cannot. So the gem_context_set_engines()
should be considered a separate step, or a very, very persuasive
argument made as to why we consider the multiple ABI paths equivalent,
bearing in mind the security implications of getting it wrong.
-Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/gem_ctx_persistence: Set context with supported engines
  2020-01-09  8:50 [igt-dev] [PATCH i-g-t 0/1] tests/i915/gem_ctx_persistence: Set context with supported engines Bommu Krishnaiah
  2020-01-09  8:50 ` [igt-dev] [PATCH i-g-t 1/1] " Bommu Krishnaiah
@ 2020-01-09 10:45 ` Patchwork
  2020-01-09 20:37 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  2 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2020-01-09 10:45 UTC (permalink / raw)
  To: Bommu Krishnaiah; +Cc: igt-dev

== Series Details ==

Series: tests/i915/gem_ctx_persistence: Set context with supported engines
URL   : https://patchwork.freedesktop.org/series/71810/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_7705 -> IGTPW_3908
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/index.html

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_3908:

### IGT changes ###

#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@gem_exec_suspend@basic-s4-devices:
    - {fi-ehl-1}:         NOTRUN -> [INCOMPLETE][1]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/fi-ehl-1/igt@gem_exec_suspend@basic-s4-devices.html

  
Known issues
------------

  Here are the changes found in IGTPW_3908 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@i915_module_load@reload-with-fault-injection:
    - fi-skl-6700k2:      [PASS][2] -> [DMESG-WARN][3] ([i915#889])
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/fi-skl-6700k2/igt@i915_module_load@reload-with-fault-injection.html
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/fi-skl-6700k2/igt@i915_module_load@reload-with-fault-injection.html

  * igt@i915_selftest@live_gem_contexts:
    - fi-cfl-guc:         [PASS][4] -> [INCOMPLETE][5] ([fdo#106070] / [i915#424])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/fi-cfl-guc/igt@i915_selftest@live_gem_contexts.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/fi-cfl-guc/igt@i915_selftest@live_gem_contexts.html

  * igt@kms_chamelium@hdmi-hpd-fast:
    - fi-kbl-7500u:       [PASS][6] -> [FAIL][7] ([fdo#111407])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html

  
#### Possible fixes ####

  * igt@gem_close_race@basic-threads:
    - fi-byt-j1900:       [TIMEOUT][8] ([i915#816]) -> [PASS][9]
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/fi-byt-j1900/igt@gem_close_race@basic-threads.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/fi-byt-j1900/igt@gem_close_race@basic-threads.html

  * igt@gem_exec_fence@nb-await-default:
    - {fi-ehl-1}:         [INCOMPLETE][10] -> [PASS][11]
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/fi-ehl-1/igt@gem_exec_fence@nb-await-default.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/fi-ehl-1/igt@gem_exec_fence@nb-await-default.html

  * igt@i915_module_load@reload-with-fault-injection:
    - fi-cfl-8700k:       [INCOMPLETE][12] ([i915#505]) -> [PASS][13]
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/fi-cfl-8700k/igt@i915_module_load@reload-with-fault-injection.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/fi-cfl-8700k/igt@i915_module_load@reload-with-fault-injection.html
    - fi-kbl-x1275:       [INCOMPLETE][14] ([i915#879]) -> [PASS][15]
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/fi-kbl-x1275/igt@i915_module_load@reload-with-fault-injection.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/fi-kbl-x1275/igt@i915_module_load@reload-with-fault-injection.html

  * igt@i915_pm_rpm@module-reload:
    - fi-kbl-guc:         [SKIP][16] ([fdo#109271]) -> [PASS][17]
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/fi-kbl-guc/igt@i915_pm_rpm@module-reload.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/fi-kbl-guc/igt@i915_pm_rpm@module-reload.html

  * igt@i915_selftest@live_blt:
    - fi-hsw-4770:        [DMESG-FAIL][18] ([i915#553] / [i915#725]) -> [PASS][19]
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/fi-hsw-4770/igt@i915_selftest@live_blt.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/fi-hsw-4770/igt@i915_selftest@live_blt.html

  * igt@kms_flip@basic-flip-vs-wf_vblank:
    - fi-skl-6770hq:      [INCOMPLETE][20] ([i915#435]) -> [PASS][21]
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/fi-skl-6770hq/igt@kms_flip@basic-flip-vs-wf_vblank.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/fi-skl-6770hq/igt@kms_flip@basic-flip-vs-wf_vblank.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#106070]: https://bugs.freedesktop.org/show_bug.cgi?id=106070
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#111407]: https://bugs.freedesktop.org/show_bug.cgi?id=111407
  [i915#424]: https://gitlab.freedesktop.org/drm/intel/issues/424
  [i915#435]: https://gitlab.freedesktop.org/drm/intel/issues/435
  [i915#505]: https://gitlab.freedesktop.org/drm/intel/issues/505
  [i915#553]: https://gitlab.freedesktop.org/drm/intel/issues/553
  [i915#725]: https://gitlab.freedesktop.org/drm/intel/issues/725
  [i915#816]: https://gitlab.freedesktop.org/drm/intel/issues/816
  [i915#879]: https://gitlab.freedesktop.org/drm/intel/issues/879
  [i915#889]: https://gitlab.freedesktop.org/drm/intel/issues/889


Participating hosts (38 -> 45)
------------------------------

  Additional (12): fi-bdw-5557u fi-bsw-n3050 fi-hsw-peppy fi-snb-2520m fi-gdg-551 fi-ivb-3770 fi-bsw-kefka fi-skl-lmem fi-blb-e6850 fi-kbl-r fi-skl-6600u fi-snb-2600 
  Missing    (5): fi-hsw-4770r fi-byt-squawks fi-ctg-p8600 fi-kbl-7560u fi-tgl-y 


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_5358 -> IGTPW_3908

  CI-20190529: 20190529
  CI_DRM_7705: b57ea8cadecd3444690439b4703d964afca476e1 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_3908: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/index.html
  IGT_5358: c6fc013f414b806175dc4143c58ab445e5235ea5 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/index.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [igt-dev] ✗ Fi.CI.IGT: failure for tests/i915/gem_ctx_persistence: Set context with supported engines
  2020-01-09  8:50 [igt-dev] [PATCH i-g-t 0/1] tests/i915/gem_ctx_persistence: Set context with supported engines Bommu Krishnaiah
  2020-01-09  8:50 ` [igt-dev] [PATCH i-g-t 1/1] " Bommu Krishnaiah
  2020-01-09 10:45 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
@ 2020-01-09 20:37 ` Patchwork
  2 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2020-01-09 20:37 UTC (permalink / raw)
  To: Bommu Krishnaiah; +Cc: igt-dev

== Series Details ==

Series: tests/i915/gem_ctx_persistence: Set context with supported engines
URL   : https://patchwork.freedesktop.org/series/71810/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_7705_full -> IGTPW_3908_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_3908_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_3908_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/index.html

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_3908_full:

### IGT changes ###

#### Possible regressions ####

  * igt@gem_persistent_relocs@forked-faulting-reloc:
    - shard-snb:          [PASS][1] -> [DMESG-WARN][2] +1 similar issue
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-snb6/igt@gem_persistent_relocs@forked-faulting-reloc.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-snb4/igt@gem_persistent_relocs@forked-faulting-reloc.html

  * igt@i915_pm_rps@reset:
    - shard-apl:          [PASS][3] -> [DMESG-WARN][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-apl3/igt@i915_pm_rps@reset.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-apl1/igt@i915_pm_rps@reset.html

  
#### Warnings ####

  * igt@runner@aborted:
    - shard-apl:          [FAIL][5] ([i915#940]) -> [FAIL][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-apl1/igt@runner@aborted.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-apl1/igt@runner@aborted.html

  
Known issues
------------

  Here are the changes found in IGTPW_3908_full that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_ctx_isolation@vcs1-reset:
    - shard-iclb:         [PASS][7] -> [SKIP][8] ([fdo#109276] / [fdo#112080])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb2/igt@gem_ctx_isolation@vcs1-reset.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb3/igt@gem_ctx_isolation@vcs1-reset.html

  * igt@gem_ctx_shared@q-smoketest-blt:
    - shard-tglb:         [PASS][9] -> [INCOMPLETE][10] ([fdo#111735])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb1/igt@gem_ctx_shared@q-smoketest-blt.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb9/igt@gem_ctx_shared@q-smoketest-blt.html

  * igt@gem_exec_parallel@basic:
    - shard-tglb:         [PASS][11] -> [INCOMPLETE][12] ([i915#472] / [i915#476])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb2/igt@gem_exec_parallel@basic.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb8/igt@gem_exec_parallel@basic.html

  * igt@gem_exec_schedule@in-order-bsd:
    - shard-iclb:         [PASS][13] -> [SKIP][14] ([fdo#112146]) +2 similar issues
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb3/igt@gem_exec_schedule@in-order-bsd.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb2/igt@gem_exec_schedule@in-order-bsd.html

  * igt@gem_exec_schedule@pi-common-bsd:
    - shard-iclb:         [PASS][15] -> [SKIP][16] ([i915#677]) +1 similar issue
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb7/igt@gem_exec_schedule@pi-common-bsd.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb4/igt@gem_exec_schedule@pi-common-bsd.html

  * igt@gem_exec_schedule@preempt-queue-bsd1:
    - shard-iclb:         [PASS][17] -> [SKIP][18] ([fdo#109276]) +20 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb2/igt@gem_exec_schedule@preempt-queue-bsd1.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb3/igt@gem_exec_schedule@preempt-queue-bsd1.html

  * igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd1:
    - shard-tglb:         [PASS][19] -> [INCOMPLETE][20] ([fdo#111677] / [i915#472]) +1 similar issue
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb1/igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd1.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb8/igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd1.html

  * igt@gem_exec_schedule@preempt-queue-contexts-chain-vebox:
    - shard-tglb:         [PASS][21] -> [INCOMPLETE][22] ([fdo#111606] / [fdo#111677] / [i915#472])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb1/igt@gem_exec_schedule@preempt-queue-contexts-chain-vebox.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb6/igt@gem_exec_schedule@preempt-queue-contexts-chain-vebox.html

  * igt@gem_exec_schedule@smoketest-all:
    - shard-tglb:         [PASS][23] -> [INCOMPLETE][24] ([i915#463] / [i915#472])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb5/igt@gem_exec_schedule@smoketest-all.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb2/igt@gem_exec_schedule@smoketest-all.html

  * igt@gem_exec_suspend@basic-s3-devices:
    - shard-tglb:         [PASS][25] -> [INCOMPLETE][26] ([i915#460] / [i915#472])
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb9/igt@gem_exec_suspend@basic-s3-devices.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb3/igt@gem_exec_suspend@basic-s3-devices.html

  * igt@gem_persistent_relocs@forked-interruptible-thrashing:
    - shard-snb:          [PASS][27] -> [FAIL][28] ([i915#520])
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-snb5/igt@gem_persistent_relocs@forked-interruptible-thrashing.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-snb2/igt@gem_persistent_relocs@forked-interruptible-thrashing.html

  * igt@gem_ppgtt@flink-and-close-vma-leak:
    - shard-glk:          [PASS][29] -> [FAIL][30] ([i915#644])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-glk1/igt@gem_ppgtt@flink-and-close-vma-leak.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-glk7/igt@gem_ppgtt@flink-and-close-vma-leak.html

  * igt@gen9_exec_parse@allowed-all:
    - shard-glk:          [PASS][31] -> [DMESG-WARN][32] ([i915#716])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-glk1/igt@gen9_exec_parse@allowed-all.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-glk8/igt@gen9_exec_parse@allowed-all.html

  * igt@i915_pm_dc@dc5-dpms:
    - shard-iclb:         [PASS][33] -> [FAIL][34] ([i915#447])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb2/igt@i915_pm_dc@dc5-dpms.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb3/igt@i915_pm_dc@dc5-dpms.html

  * igt@i915_pm_rps@waitboost:
    - shard-iclb:         [PASS][35] -> [FAIL][36] ([i915#413])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb4/igt@i915_pm_rps@waitboost.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb6/igt@i915_pm_rps@waitboost.html

  * igt@i915_suspend@sysfs-reader:
    - shard-apl:          [PASS][37] -> [DMESG-WARN][38] ([i915#180]) +4 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-apl1/igt@i915_suspend@sysfs-reader.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-apl1/igt@i915_suspend@sysfs-reader.html

  * igt@kms_cursor_crc@pipe-a-cursor-suspend:
    - shard-kbl:          [PASS][39] -> [DMESG-WARN][40] ([i915#180]) +2 similar issues
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-kbl6/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-kbl6/igt@kms_cursor_crc@pipe-a-cursor-suspend.html

  * igt@kms_cursor_crc@pipe-b-cursor-64x21-random:
    - shard-glk:          [PASS][41] -> [FAIL][42] ([i915#54])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-glk8/igt@kms_cursor_crc@pipe-b-cursor-64x21-random.html
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-glk3/igt@kms_cursor_crc@pipe-b-cursor-64x21-random.html
    - shard-apl:          [PASS][43] -> [FAIL][44] ([i915#54])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-apl4/igt@kms_cursor_crc@pipe-b-cursor-64x21-random.html
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-apl1/igt@kms_cursor_crc@pipe-b-cursor-64x21-random.html
    - shard-kbl:          [PASS][45] -> [FAIL][46] ([i915#54])
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-kbl3/igt@kms_cursor_crc@pipe-b-cursor-64x21-random.html
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-kbl2/igt@kms_cursor_crc@pipe-b-cursor-64x21-random.html

  * igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render:
    - shard-tglb:         [PASS][47] -> [FAIL][48] ([i915#49]) +3 similar issues
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb7/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render.html
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb5/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render.html

  * igt@kms_psr2_su@page_flip:
    - shard-iclb:         [PASS][49] -> [SKIP][50] ([fdo#109642] / [fdo#111068])
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb2/igt@kms_psr2_su@page_flip.html
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb5/igt@kms_psr2_su@page_flip.html

  * igt@kms_psr@psr2_cursor_plane_onoff:
    - shard-iclb:         [PASS][51] -> [SKIP][52] ([fdo#109441])
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb2/igt@kms_psr@psr2_cursor_plane_onoff.html
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb1/igt@kms_psr@psr2_cursor_plane_onoff.html

  * igt@perf_pmu@busy-no-semaphores-vcs1:
    - shard-iclb:         [PASS][53] -> [SKIP][54] ([fdo#112080]) +17 similar issues
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb1/igt@perf_pmu@busy-no-semaphores-vcs1.html
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb8/igt@perf_pmu@busy-no-semaphores-vcs1.html

  
#### Possible fixes ####

  * igt@gem_busy@extended-parallel-vcs1:
    - shard-iclb:         [SKIP][55] ([fdo#112080]) -> [PASS][56] +9 similar issues
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb3/igt@gem_busy@extended-parallel-vcs1.html
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb4/igt@gem_busy@extended-parallel-vcs1.html

  * igt@gem_ctx_isolation@vcs1-none:
    - shard-iclb:         [SKIP][57] ([fdo#109276] / [fdo#112080]) -> [PASS][58] +1 similar issue
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb3/igt@gem_ctx_isolation@vcs1-none.html
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb2/igt@gem_ctx_isolation@vcs1-none.html

  * igt@gem_exec_await@wide-all:
    - shard-tglb:         [INCOMPLETE][59] ([fdo#111736] / [i915#472]) -> [PASS][60]
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb8/igt@gem_exec_await@wide-all.html
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb1/igt@gem_exec_await@wide-all.html

  * igt@gem_exec_balancer@smoke:
    - shard-iclb:         [SKIP][61] ([fdo#110854]) -> [PASS][62]
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb7/igt@gem_exec_balancer@smoke.html
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb2/igt@gem_exec_balancer@smoke.html

  * igt@gem_exec_create@forked:
    - shard-apl:          [TIMEOUT][63] ([i915#940]) -> [PASS][64]
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-apl1/igt@gem_exec_create@forked.html
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-apl6/igt@gem_exec_create@forked.html

  * igt@gem_exec_gttfill@basic:
    - shard-tglb:         [INCOMPLETE][65] ([fdo#111593] / [i915#472]) -> [PASS][66] +1 similar issue
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb6/igt@gem_exec_gttfill@basic.html
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb1/igt@gem_exec_gttfill@basic.html

  * igt@gem_exec_reuse@single:
    - shard-tglb:         [INCOMPLETE][67] ([CI#80] / [i915#472]) -> [PASS][68]
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb3/igt@gem_exec_reuse@single.html
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb6/igt@gem_exec_reuse@single.html

  * igt@gem_exec_schedule@pi-distinct-iova-bsd:
    - shard-iclb:         [SKIP][69] ([i915#677]) -> [PASS][70]
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb2/igt@gem_exec_schedule@pi-distinct-iova-bsd.html
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb3/igt@gem_exec_schedule@pi-distinct-iova-bsd.html

  * igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd:
    - shard-iclb:         [SKIP][71] ([fdo#112146]) -> [PASS][72] +4 similar issues
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb1/igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd.html
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb5/igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd.html

  * igt@gem_exec_schedule@smoketest-bsd1:
    - shard-tglb:         [INCOMPLETE][73] ([i915#463] / [i915#472]) -> [PASS][74]
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb6/igt@gem_exec_schedule@smoketest-bsd1.html
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb5/igt@gem_exec_schedule@smoketest-bsd1.html

  * igt@gem_persistent_relocs@forked-thrashing:
    - shard-iclb:         [FAIL][75] ([i915#520]) -> [PASS][76]
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb8/igt@gem_persistent_relocs@forked-thrashing.html
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb1/igt@gem_persistent_relocs@forked-thrashing.html

  * igt@gem_userptr_blits@sync-unmap-cycles:
    - shard-snb:          [DMESG-WARN][77] ([fdo#111870]) -> [PASS][78] +2 similar issues
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-snb2/igt@gem_userptr_blits@sync-unmap-cycles.html
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-snb4/igt@gem_userptr_blits@sync-unmap-cycles.html

  * igt@gem_workarounds@suspend-resume-fd:
    - shard-kbl:          [DMESG-WARN][79] ([i915#180]) -> [PASS][80] +5 similar issues
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-kbl4/igt@gem_workarounds@suspend-resume-fd.html
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-kbl3/igt@gem_workarounds@suspend-resume-fd.html

  * igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
    - shard-glk:          [FAIL][81] ([i915#79]) -> [PASS][82]
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-glk8/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible.html
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-glk6/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-render:
    - shard-tglb:         [FAIL][83] ([i915#49]) -> [PASS][84]
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb1/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-render.html
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-render.html

  * igt@kms_plane@pixel-format-pipe-c-planes-source-clamping:
    - shard-tglb:         [INCOMPLETE][85] -> [PASS][86]
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb2/igt@kms_plane@pixel-format-pipe-c-planes-source-clamping.html
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb5/igt@kms_plane@pixel-format-pipe-c-planes-source-clamping.html

  * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes:
    - shard-apl:          [DMESG-WARN][87] ([i915#180]) -> [PASS][88] +1 similar issue
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-apl4/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-apl7/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html

  * igt@kms_psr@psr2_primary_mmap_gtt:
    - shard-iclb:         [SKIP][89] ([fdo#109441]) -> [PASS][90] +2 similar issues
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb6/igt@kms_psr@psr2_primary_mmap_gtt.html
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb2/igt@kms_psr@psr2_primary_mmap_gtt.html

  * igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend:
    - shard-kbl:          [INCOMPLETE][91] ([fdo#103665]) -> [PASS][92]
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-kbl1/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-kbl4/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html

  * igt@perf@oa-exponents:
    - shard-tglb:         [FAIL][93] ([i915#84]) -> [PASS][94]
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb6/igt@perf@oa-exponents.html
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb5/igt@perf@oa-exponents.html

  * igt@prime_busy@hang-bsd2:
    - shard-iclb:         [SKIP][95] ([fdo#109276]) -> [PASS][96] +11 similar issues
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb7/igt@prime_busy@hang-bsd2.html
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb2/igt@prime_busy@hang-bsd2.html

  
#### Warnings ####

  * igt@gem_ctx_persistence@vcs1-queued:
    - shard-iclb:         [SKIP][97] ([fdo#109276] / [fdo#112080]) -> [SKIP][98] ([fdo#112080]) +8 similar issues
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb5/igt@gem_ctx_persistence@vcs1-queued.html
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb5/igt@gem_ctx_persistence@vcs1-queued.html

  * igt@kms_atomic_transition@6x-modeset-transitions-fencing:
    - shard-tglb:         [SKIP][99] ([fdo#112021]) -> [SKIP][100] ([fdo#112016] / [fdo#112021])
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-tglb9/igt@kms_atomic_transition@6x-modeset-transitions-fencing.html
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-tglb1/igt@kms_atomic_transition@6x-modeset-transitions-fencing.html

  * igt@kms_dp_dsc@basic-dsc-enable-edp:
    - shard-iclb:         [DMESG-WARN][101] ([fdo#107724]) -> [SKIP][102] ([fdo#109349])
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7705/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/shard-iclb8/igt@kms_dp_dsc@basic-dsc-enable-edp.html

  
  [CI#80]: https://gitlab.freedesktop.org/gfx-ci/i915-infra/issues/80
  [fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665
  [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
  [fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
  [fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111593]: https://bugs.freedesktop.org/show_bug.cgi?id=111593
  [fdo#111606]: https://bugs.freedesktop.org/show_bug.cgi?id=111606
  [fdo#111677]: https://bugs.freedesktop.org/show_bug.cgi?id=111677
  [fdo#111735]: https://bugs.freedesktop.org/show_bug.cgi?id=111735
  [fdo#111736]: https://bugs.freedesktop.org/show_bug.cgi?id=111736
  [fdo#111870]: https://bugs.freedesktop.org/show_bug.cgi?id=111870
  [fdo#112016]: https://bugs.freedesktop.org/show_bug.cgi?id=112016
  [fdo#112021]: https://bugs.freedesktop.org/show_bug.cgi?id=112021
  [fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080
  [fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#413]: https://gitlab.freedesktop.org/drm/intel/issues/413
  [i915#447]: https://gitlab.freedesktop.org/drm/intel/issues/447
  [i915#460]: https://gitlab.freedesktop.org/drm/intel/issues/460
  [i915#463]: https://gitlab.freedesktop.org/drm/intel/issues/463
  [i915#472]: https://gitlab.freedesktop.org/drm/intel/issues/472
  [i915#476]: https://gitlab.freedesktop.org/drm/intel/issues/476
  [i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49
  [i915#520]: https://gitlab.freedesktop.org/drm/intel/issues/520
  [i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54
  [i915#644]: https://gitlab.freedesktop.org/drm/intel/issues/644
  [i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677
  [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
  [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
  [i915#84]: https://gitlab.freedesktop.org/drm/intel/issues/84
  [i915#940]: https://gitlab.freedesktop.org/drm/intel/issues/940


Participating hosts (11 -> 8)
------------------------------

  Missing    (3): pig-skl-6260u pig-glk-j5005 pig-hsw-4770r 


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_5358 -> IGTPW_3908
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_7705: b57ea8cadecd3444690439b4703d964afca476e1 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_3908: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/index.html
  IGT_5358: c6fc013f414b806175dc4143c58ab445e5235ea5 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3908/index.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 1/1] tests/i915/gem_ctx_persistence: Set context with supported engines
  2020-01-09  9:18   ` Chris Wilson
@ 2020-01-10 10:56     ` Tvrtko Ursulin
  2020-01-10 11:03       ` Chris Wilson
  0 siblings, 1 reply; 8+ messages in thread
From: Tvrtko Ursulin @ 2020-01-10 10:56 UTC (permalink / raw)
  To: Chris Wilson, Bommu Krishnaiah, igt-dev; +Cc: Tvrtko Ursulin


These were my suggestions so I'll reply. :)

On 09/01/2020 09:18, Chris Wilson wrote:
> Quoting Bommu Krishnaiah (2020-01-09 08:50:23)
>> Update the context with supported engines on the platform with set_property
>> I915_CONTEXT_PARAM_ENGINES to make sure the work load is submitted to
>> the available engines only.
>>
>> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
>> Signed-off-by: Bommu Krishnaiah <krishnaiah.bommu@intel.com>
>> ---
>>   tests/i915/gem_ctx_persistence.c | 34 ++++++++++++++++++--------------
>>   1 file changed, 19 insertions(+), 15 deletions(-)
>>
>> diff --git a/tests/i915/gem_ctx_persistence.c b/tests/i915/gem_ctx_persistence.c
>> index d68431ae..e410e85f 100644
>> --- a/tests/i915/gem_ctx_persistence.c
>> +++ b/tests/i915/gem_ctx_persistence.c
>> @@ -145,6 +145,15 @@ static void test_clone(int i915)
>>          gem_context_destroy(i915, clone);
>>   }
>>   
>> +static uint32_t create_context(int i915, bool persistent)
>> +{
>> +       uint32_t ctx;
>> +
>> +       ctx = gem_context_create(i915);
>> +       gem_context_set_persistence(i915, ctx, persistent);
>> +       gem_context_set_all_engines(i915, ctx);
> 
> Really? We only need a single engine, could you not be a little more
> precise.

We have a general situation where as soon as we call 
__for_each_physical_engine, all code/subtests that follow and which 
create new contexts, which are then submitted mixing the flags from the 
iterated engines, needs to have a matching engine map. This stateful 
behaviour causes problems but it's what we have. I don't have any better 
ideas on how to universally go about this.

> 
>> +       return ctx;
>> +}
>>   static void test_persistence(int i915, unsigned int engine)
>>   {
>>          igt_spin_t *spin;
>> @@ -156,8 +165,7 @@ static void test_persistence(int i915, unsigned int engine)
>>           * request is retired -- no early termination.
>>           */
>>   
>> -       ctx = gem_context_create(i915);
>> -       gem_context_set_persistence(i915, ctx, true);
>> +       ctx = create_context(i915, true);
>>   
>>          spin = igt_spin_new(i915, ctx,
>>                              .engine = engine,
>> @@ -188,8 +196,7 @@ static void test_nonpersistent_cleanup(int i915, unsigned int engine)
>>           * any inflight request is cancelled.
>>           */
>>   
>> -       ctx = gem_context_create(i915);
>> -       gem_context_set_persistence(i915, ctx, false);
>> +       ctx = create_context(i915, false);
>>   
>>          spin = igt_spin_new(i915, ctx,
>>                              .engine = engine,
>> @@ -217,8 +224,7 @@ static void test_nonpersistent_mixed(int i915, unsigned int engine)
>>                  igt_spin_t *spin;
>>                  uint32_t ctx;
>>   
>> -               ctx = gem_context_create(i915);
>> -               gem_context_set_persistence(i915, ctx, i & 1);
>> +               ctx = create_context(i915, i & 1);
>>   
>>                  spin = igt_spin_new(i915, ctx,
>>                                      .engine = engine,
>> @@ -253,8 +259,7 @@ static void test_nonpersistent_hostile(int i915, unsigned int engine)
>>           * the requests and cleanup the context.
>>           */
>>   
>> -       ctx = gem_context_create(i915);
>> -       gem_context_set_persistence(i915, ctx, false);
>> +       ctx = create_context(i915, false);
>>   
>>          spin = igt_spin_new(i915, ctx,
>>                              .engine = engine,
>> @@ -284,8 +289,8 @@ static void test_nonpersistent_hostile_preempt(int i915, unsigned int engine)
>>   
>>          igt_require(gem_scheduler_has_preemption(i915));
>>   
>> -       ctx = gem_context_create(i915);
>> -       gem_context_set_persistence(i915, ctx, true);
>> +       ctx = create_context(i915, true);
>> +
>>          gem_context_set_priority(i915, ctx, 0);
>>          spin[0] = igt_spin_new(i915, ctx,
>>                                 .engine = engine,
>> @@ -385,8 +390,8 @@ static void test_nonpersistent_queued(int i915, unsigned int engine)
>>   
>>          gem_quiescent_gpu(i915);
>>   
>> -       ctx = gem_context_create(i915);
>> -       gem_context_set_persistence(i915, ctx, false);
>> +       ctx = create_context(i915, false);
>> +
>>          spin = igt_spin_new(i915, ctx,
>>                              .engine = engine,
>>                              .flags = IGT_SPIN_FENCE_OUT);
>> @@ -512,8 +517,7 @@ static void test_process_mixed(int i915, unsigned int engine)
>>                          igt_spin_t *spin;
>>                          uint32_t ctx;
>>   
>> -                       ctx = gem_context_create(i915);
>> -                       gem_context_set_persistence(i915, ctx, persists);
>> +                       ctx = create_context(i915, persists);
>>   
>>                          spin = igt_spin_new(i915, ctx,
>>                                              .engine = engine,
>> @@ -727,7 +731,7 @@ igt_main
>>          igt_subtest("hangcheck")
>>                  test_nohangcheck_hostile(i915);
>>   
>> -       __for_each_static_engine(e) {
>> +       __for_each_physical_engine(i915, e) {
> 
> Please note this has to check ABI. We have to confirm that no matter how
> the user tries to fool us, they cannot. So the gem_context_set_engines()
> should be considered a separate step, or a very, very persuasive
> argument made as to why we consider the multiple ABI paths equivalent,
> bearing in mind the security implications of getting it wrong.

So duplicate the subtest loop, first do ABI, then physical?

for_each_engine(..) {
	...

	igt_subtest_f("legacy-%s-persistence")
		test_persistence(..)
	...
}

__for_each_physical_engine(..) {
	...

	igt_subtest_f("%s-persistence")
		test_persistence(..)
	...
}

Then in create_context helper we need to query the default context ( 
gem_context_has_engine_map) to establish if we need to call 
gem_context_set_all_engines or not.

Acceptable?

Regards,

Tvrtko
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 1/1] tests/i915/gem_ctx_persistence: Set context with supported engines
  2020-01-10 10:56     ` Tvrtko Ursulin
@ 2020-01-10 11:03       ` Chris Wilson
  2020-01-10 11:14         ` Tvrtko Ursulin
  0 siblings, 1 reply; 8+ messages in thread
From: Chris Wilson @ 2020-01-10 11:03 UTC (permalink / raw)
  To: Bommu Krishnaiah, Tvrtko Ursulin, igt-dev; +Cc: Tvrtko Ursulin

Quoting Tvrtko Ursulin (2020-01-10 10:56:59)
> 
> These were my suggestions so I'll reply. :)
> 
> On 09/01/2020 09:18, Chris Wilson wrote:
> > Quoting Bommu Krishnaiah (2020-01-09 08:50:23)
> >> Update the context with supported engines on the platform with set_property
> >> I915_CONTEXT_PARAM_ENGINES to make sure the work load is submitted to
> >> the available engines only.
> >>
> >> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> >> Signed-off-by: Bommu Krishnaiah <krishnaiah.bommu@intel.com>
> >> ---
> >>   tests/i915/gem_ctx_persistence.c | 34 ++++++++++++++++++--------------
> >>   1 file changed, 19 insertions(+), 15 deletions(-)
> >>
> >> diff --git a/tests/i915/gem_ctx_persistence.c b/tests/i915/gem_ctx_persistence.c
> >> index d68431ae..e410e85f 100644
> >> --- a/tests/i915/gem_ctx_persistence.c
> >> +++ b/tests/i915/gem_ctx_persistence.c
> >> @@ -145,6 +145,15 @@ static void test_clone(int i915)
> >>          gem_context_destroy(i915, clone);
> >>   }
> >>   
> >> +static uint32_t create_context(int i915, bool persistent)
> >> +{
> >> +       uint32_t ctx;
> >> +
> >> +       ctx = gem_context_create(i915);
> >> +       gem_context_set_persistence(i915, ctx, persistent);
> >> +       gem_context_set_all_engines(i915, ctx);
> > 
> > Really? We only need a single engine, could you not be a little more
> > precise.
> 
> We have a general situation where as soon as we call 
> __for_each_physical_engine, all code/subtests that follow and which 
> create new contexts, which are then submitted mixing the flags from the 
> iterated engines, needs to have a matching engine map. This stateful 
> behaviour causes problems but it's what we have. I don't have any better 
> ideas on how to universally go about this.
> 
> > 
> >> +       return ctx;
> >> +}
> >>   static void test_persistence(int i915, unsigned int engine)
> >>   {
> >>          igt_spin_t *spin;
> >> @@ -156,8 +165,7 @@ static void test_persistence(int i915, unsigned int engine)
> >>           * request is retired -- no early termination.
> >>           */
> >>   
> >> -       ctx = gem_context_create(i915);
> >> -       gem_context_set_persistence(i915, ctx, true);
> >> +       ctx = create_context(i915, true);
> >>   
> >>          spin = igt_spin_new(i915, ctx,
> >>                              .engine = engine,
> >> @@ -188,8 +196,7 @@ static void test_nonpersistent_cleanup(int i915, unsigned int engine)
> >>           * any inflight request is cancelled.
> >>           */
> >>   
> >> -       ctx = gem_context_create(i915);
> >> -       gem_context_set_persistence(i915, ctx, false);
> >> +       ctx = create_context(i915, false);
> >>   
> >>          spin = igt_spin_new(i915, ctx,
> >>                              .engine = engine,
> >> @@ -217,8 +224,7 @@ static void test_nonpersistent_mixed(int i915, unsigned int engine)
> >>                  igt_spin_t *spin;
> >>                  uint32_t ctx;
> >>   
> >> -               ctx = gem_context_create(i915);
> >> -               gem_context_set_persistence(i915, ctx, i & 1);
> >> +               ctx = create_context(i915, i & 1);
> >>   
> >>                  spin = igt_spin_new(i915, ctx,
> >>                                      .engine = engine,
> >> @@ -253,8 +259,7 @@ static void test_nonpersistent_hostile(int i915, unsigned int engine)
> >>           * the requests and cleanup the context.
> >>           */
> >>   
> >> -       ctx = gem_context_create(i915);
> >> -       gem_context_set_persistence(i915, ctx, false);
> >> +       ctx = create_context(i915, false);
> >>   
> >>          spin = igt_spin_new(i915, ctx,
> >>                              .engine = engine,
> >> @@ -284,8 +289,8 @@ static void test_nonpersistent_hostile_preempt(int i915, unsigned int engine)
> >>   
> >>          igt_require(gem_scheduler_has_preemption(i915));
> >>   
> >> -       ctx = gem_context_create(i915);
> >> -       gem_context_set_persistence(i915, ctx, true);
> >> +       ctx = create_context(i915, true);
> >> +
> >>          gem_context_set_priority(i915, ctx, 0);
> >>          spin[0] = igt_spin_new(i915, ctx,
> >>                                 .engine = engine,
> >> @@ -385,8 +390,8 @@ static void test_nonpersistent_queued(int i915, unsigned int engine)
> >>   
> >>          gem_quiescent_gpu(i915);
> >>   
> >> -       ctx = gem_context_create(i915);
> >> -       gem_context_set_persistence(i915, ctx, false);
> >> +       ctx = create_context(i915, false);
> >> +
> >>          spin = igt_spin_new(i915, ctx,
> >>                              .engine = engine,
> >>                              .flags = IGT_SPIN_FENCE_OUT);
> >> @@ -512,8 +517,7 @@ static void test_process_mixed(int i915, unsigned int engine)
> >>                          igt_spin_t *spin;
> >>                          uint32_t ctx;
> >>   
> >> -                       ctx = gem_context_create(i915);
> >> -                       gem_context_set_persistence(i915, ctx, persists);
> >> +                       ctx = create_context(i915, persists);
> >>   
> >>                          spin = igt_spin_new(i915, ctx,
> >>                                              .engine = engine,
> >> @@ -727,7 +731,7 @@ igt_main
> >>          igt_subtest("hangcheck")
> >>                  test_nohangcheck_hostile(i915);
> >>   
> >> -       __for_each_static_engine(e) {
> >> +       __for_each_physical_engine(i915, e) {
> > 
> > Please note this has to check ABI. We have to confirm that no matter how
> > the user tries to fool us, they cannot. So the gem_context_set_engines()
> > should be considered a separate step, or a very, very persuasive
> > argument made as to why we consider the multiple ABI paths equivalent,
> > bearing in mind the security implications of getting it wrong.
> 
> So duplicate the subtest loop, first do ABI, then physical?
> 
> for_each_engine(..) {
>         ...
> 
>         igt_subtest_f("legacy-%s-persistence")
>                 test_persistence(..)
>         ...
> }
> 
> __for_each_physical_engine(..) {
>         ...
> 
>         igt_subtest_f("%s-persistence")
>                 test_persistence(..)
>         ...
> }
> 
> Then in create_context helper we need to query the default context ( 
> gem_context_has_engine_map) to establish if we need to call 
> gem_context_set_all_engines or not.
> 
> Acceptable?

Along the lines (I don't like gem_context_set_all_engines very much, and 
so will keep nagging.). However, talking about engines[] vs persistence
opened up a can of worms, in that we need to keep silly/abusive
engines[] to make sure a hostile user can not circumvent the DoS
prevention. So the task got a bit bigger :-p
-Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 1/1] tests/i915/gem_ctx_persistence: Set context with supported engines
  2020-01-10 11:03       ` Chris Wilson
@ 2020-01-10 11:14         ` Tvrtko Ursulin
  0 siblings, 0 replies; 8+ messages in thread
From: Tvrtko Ursulin @ 2020-01-10 11:14 UTC (permalink / raw)
  To: Chris Wilson, Bommu Krishnaiah, igt-dev; +Cc: Tvrtko Ursulin


On 10/01/2020 11:03, Chris Wilson wrote:
> Quoting Tvrtko Ursulin (2020-01-10 10:56:59)
>>
>> These were my suggestions so I'll reply. :)
>>
>> On 09/01/2020 09:18, Chris Wilson wrote:
>>> Quoting Bommu Krishnaiah (2020-01-09 08:50:23)
>>>> Update the context with supported engines on the platform with set_property
>>>> I915_CONTEXT_PARAM_ENGINES to make sure the work load is submitted to
>>>> the available engines only.
>>>>
>>>> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
>>>> Signed-off-by: Bommu Krishnaiah <krishnaiah.bommu@intel.com>
>>>> ---
>>>>    tests/i915/gem_ctx_persistence.c | 34 ++++++++++++++++++--------------
>>>>    1 file changed, 19 insertions(+), 15 deletions(-)
>>>>
>>>> diff --git a/tests/i915/gem_ctx_persistence.c b/tests/i915/gem_ctx_persistence.c
>>>> index d68431ae..e410e85f 100644
>>>> --- a/tests/i915/gem_ctx_persistence.c
>>>> +++ b/tests/i915/gem_ctx_persistence.c
>>>> @@ -145,6 +145,15 @@ static void test_clone(int i915)
>>>>           gem_context_destroy(i915, clone);
>>>>    }
>>>>    
>>>> +static uint32_t create_context(int i915, bool persistent)
>>>> +{
>>>> +       uint32_t ctx;
>>>> +
>>>> +       ctx = gem_context_create(i915);
>>>> +       gem_context_set_persistence(i915, ctx, persistent);
>>>> +       gem_context_set_all_engines(i915, ctx);
>>>
>>> Really? We only need a single engine, could you not be a little more
>>> precise.
>>
>> We have a general situation where as soon as we call
>> __for_each_physical_engine, all code/subtests that follow and which
>> create new contexts, which are then submitted mixing the flags from the
>> iterated engines, needs to have a matching engine map. This stateful
>> behaviour causes problems but it's what we have. I don't have any better
>> ideas on how to universally go about this.
>>
>>>
>>>> +       return ctx;
>>>> +}
>>>>    static void test_persistence(int i915, unsigned int engine)
>>>>    {
>>>>           igt_spin_t *spin;
>>>> @@ -156,8 +165,7 @@ static void test_persistence(int i915, unsigned int engine)
>>>>            * request is retired -- no early termination.
>>>>            */
>>>>    
>>>> -       ctx = gem_context_create(i915);
>>>> -       gem_context_set_persistence(i915, ctx, true);
>>>> +       ctx = create_context(i915, true);
>>>>    
>>>>           spin = igt_spin_new(i915, ctx,
>>>>                               .engine = engine,
>>>> @@ -188,8 +196,7 @@ static void test_nonpersistent_cleanup(int i915, unsigned int engine)
>>>>            * any inflight request is cancelled.
>>>>            */
>>>>    
>>>> -       ctx = gem_context_create(i915);
>>>> -       gem_context_set_persistence(i915, ctx, false);
>>>> +       ctx = create_context(i915, false);
>>>>    
>>>>           spin = igt_spin_new(i915, ctx,
>>>>                               .engine = engine,
>>>> @@ -217,8 +224,7 @@ static void test_nonpersistent_mixed(int i915, unsigned int engine)
>>>>                   igt_spin_t *spin;
>>>>                   uint32_t ctx;
>>>>    
>>>> -               ctx = gem_context_create(i915);
>>>> -               gem_context_set_persistence(i915, ctx, i & 1);
>>>> +               ctx = create_context(i915, i & 1);
>>>>    
>>>>                   spin = igt_spin_new(i915, ctx,
>>>>                                       .engine = engine,
>>>> @@ -253,8 +259,7 @@ static void test_nonpersistent_hostile(int i915, unsigned int engine)
>>>>            * the requests and cleanup the context.
>>>>            */
>>>>    
>>>> -       ctx = gem_context_create(i915);
>>>> -       gem_context_set_persistence(i915, ctx, false);
>>>> +       ctx = create_context(i915, false);
>>>>    
>>>>           spin = igt_spin_new(i915, ctx,
>>>>                               .engine = engine,
>>>> @@ -284,8 +289,8 @@ static void test_nonpersistent_hostile_preempt(int i915, unsigned int engine)
>>>>    
>>>>           igt_require(gem_scheduler_has_preemption(i915));
>>>>    
>>>> -       ctx = gem_context_create(i915);
>>>> -       gem_context_set_persistence(i915, ctx, true);
>>>> +       ctx = create_context(i915, true);
>>>> +
>>>>           gem_context_set_priority(i915, ctx, 0);
>>>>           spin[0] = igt_spin_new(i915, ctx,
>>>>                                  .engine = engine,
>>>> @@ -385,8 +390,8 @@ static void test_nonpersistent_queued(int i915, unsigned int engine)
>>>>    
>>>>           gem_quiescent_gpu(i915);
>>>>    
>>>> -       ctx = gem_context_create(i915);
>>>> -       gem_context_set_persistence(i915, ctx, false);
>>>> +       ctx = create_context(i915, false);
>>>> +
>>>>           spin = igt_spin_new(i915, ctx,
>>>>                               .engine = engine,
>>>>                               .flags = IGT_SPIN_FENCE_OUT);
>>>> @@ -512,8 +517,7 @@ static void test_process_mixed(int i915, unsigned int engine)
>>>>                           igt_spin_t *spin;
>>>>                           uint32_t ctx;
>>>>    
>>>> -                       ctx = gem_context_create(i915);
>>>> -                       gem_context_set_persistence(i915, ctx, persists);
>>>> +                       ctx = create_context(i915, persists);
>>>>    
>>>>                           spin = igt_spin_new(i915, ctx,
>>>>                                               .engine = engine,
>>>> @@ -727,7 +731,7 @@ igt_main
>>>>           igt_subtest("hangcheck")
>>>>                   test_nohangcheck_hostile(i915);
>>>>    
>>>> -       __for_each_static_engine(e) {
>>>> +       __for_each_physical_engine(i915, e) {
>>>
>>> Please note this has to check ABI. We have to confirm that no matter how
>>> the user tries to fool us, they cannot. So the gem_context_set_engines()
>>> should be considered a separate step, or a very, very persuasive
>>> argument made as to why we consider the multiple ABI paths equivalent,
>>> bearing in mind the security implications of getting it wrong.
>>
>> So duplicate the subtest loop, first do ABI, then physical?
>>
>> for_each_engine(..) {
>>          ...
>>
>>          igt_subtest_f("legacy-%s-persistence")
>>                  test_persistence(..)
>>          ...
>> }
>>
>> __for_each_physical_engine(..) {
>>          ...
>>
>>          igt_subtest_f("%s-persistence")
>>                  test_persistence(..)
>>          ...
>> }
>>
>> Then in create_context helper we need to query the default context (
>> gem_context_has_engine_map) to establish if we need to call
>> gem_context_set_all_engines or not.
>>
>> Acceptable?
> 
> Along the lines (I don't like gem_context_set_all_engines very much, and
> so will keep nagging.). However, talking about engines[] vs persistence
> opened up a can of worms, in that we need to keep silly/abusive
> engines[] to make sure a hostile user can not circumvent the DoS
> prevention. So the task got a bit bigger :-p

Let Bommu finish a simple task first if you can live with the above 
plan. And even this simple task is not so simple as demonstrated! :) 
More evil testing can be then added later.

Regards,

Tvrtko
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-01-10 11:14 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-09  8:50 [igt-dev] [PATCH i-g-t 0/1] tests/i915/gem_ctx_persistence: Set context with supported engines Bommu Krishnaiah
2020-01-09  8:50 ` [igt-dev] [PATCH i-g-t 1/1] " Bommu Krishnaiah
2020-01-09  9:18   ` Chris Wilson
2020-01-10 10:56     ` Tvrtko Ursulin
2020-01-10 11:03       ` Chris Wilson
2020-01-10 11:14         ` Tvrtko Ursulin
2020-01-09 10:45 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2020-01-09 20:37 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.