All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 0/1] Check the file descriptor while opening intel allocator
@ 2021-06-16 11:37 Andrzej Turko
  2021-06-16 11:37 ` [igt-dev] [PATCH i-g-t 1/1] lib/intel_allocator: Check validity of the file descriptor Andrzej Turko
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Andrzej Turko @ 2021-06-16 11:37 UTC (permalink / raw)
  To: igt-dev

Because all implementations of the allocator query the
gtt size using the file descriptor, we need to make sure
it is valid.

Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>

Andrzej Turko (1):
  lib/intel_allocator: Check validity of the file descriptor

 lib/intel_allocator.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

-- 
2.25.1

_______________________________________________
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] lib/intel_allocator: Check validity of the file descriptor
  2021-06-16 11:37 [igt-dev] [PATCH i-g-t 0/1] Check the file descriptor while opening intel allocator Andrzej Turko
@ 2021-06-16 11:37 ` Andrzej Turko
  2021-06-16 12:05   ` Petri Latvala
  2021-06-17  7:05   ` Zbigniew Kempczyński
  2021-06-16 15:25 ` [igt-dev] ✓ Fi.CI.BAT: success for Check the file descriptor while opening intel allocator Patchwork
  2021-06-16 17:13 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  2 siblings, 2 replies; 8+ messages in thread
From: Andrzej Turko @ 2021-06-16 11:37 UTC (permalink / raw)
  To: igt-dev

All procedures for opening particular types of allocators
query the gtt size. Even if the user has provided the
boundaries of the address space managed by the allocator,
the query is performed for the sake of validation.

gem_aperture_size() called with an invalid id returns a
default value instead of failing. Thus, we need to
additionally check whether the file descriptor is valid.

Signed-off-by: Andrzej Turko <andrzej.turko@linux.intel.com>
Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
---
 lib/intel_allocator.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/lib/intel_allocator.c b/lib/intel_allocator.c
index 96f839d4b..c060e10c3 100644
--- a/lib/intel_allocator.c
+++ b/lib/intel_allocator.c
@@ -166,6 +166,15 @@ static inline void map_entry_free_func(struct igt_map_entry *entry)
 	free(entry->data);
 }
 
+static bool can_report_gtt_size(int fd)
+{
+	struct drm_i915_gem_context_param p = {
+		.param = I915_CONTEXT_PARAM_GTT_SIZE
+	};
+
+	return (__gem_context_get_param(fd, &p) == 0);
+}
+
 static uint64_t __handle_create(struct allocator *al)
 {
 	struct handle_entry *h = malloc(sizeof(*h));
@@ -271,6 +280,8 @@ static struct intel_allocator *intel_allocator_create(int fd,
 {
 	struct intel_allocator *ial = NULL;
 
+	igt_assert(can_report_gtt_size(fd));
+
 	switch (allocator_type) {
 	/*
 	 * Few words of explanation is required here.
-- 
2.25.1

_______________________________________________
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] lib/intel_allocator: Check validity of the file descriptor
  2021-06-16 11:37 ` [igt-dev] [PATCH i-g-t 1/1] lib/intel_allocator: Check validity of the file descriptor Andrzej Turko
@ 2021-06-16 12:05   ` Petri Latvala
  2021-06-17  6:06     ` Zbigniew Kempczyński
  2021-06-17  7:05   ` Zbigniew Kempczyński
  1 sibling, 1 reply; 8+ messages in thread
From: Petri Latvala @ 2021-06-16 12:05 UTC (permalink / raw)
  To: Andrzej Turko; +Cc: igt-dev

On Wed, Jun 16, 2021 at 01:37:14PM +0200, Andrzej Turko wrote:
> All procedures for opening particular types of allocators
> query the gtt size. Even if the user has provided the
> boundaries of the address space managed by the allocator,
> the query is performed for the sake of validation.
> 
> gem_aperture_size() called with an invalid id returns a
> default value instead of failing. Thus, we need to
> additionally check whether the file descriptor is valid.
> 
> Signed-off-by: Andrzej Turko <andrzej.turko@linux.intel.com>
> Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
> ---
>  lib/intel_allocator.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/lib/intel_allocator.c b/lib/intel_allocator.c
> index 96f839d4b..c060e10c3 100644
> --- a/lib/intel_allocator.c
> +++ b/lib/intel_allocator.c
> @@ -166,6 +166,15 @@ static inline void map_entry_free_func(struct igt_map_entry *entry)
>  	free(entry->data);
>  }
>  
> +static bool can_report_gtt_size(int fd)
> +{
> +	struct drm_i915_gem_context_param p = {
> +		.param = I915_CONTEXT_PARAM_GTT_SIZE
> +	};
> +
> +	return (__gem_context_get_param(fd, &p) == 0);
> +}
> +
>  static uint64_t __handle_create(struct allocator *al)
>  {
>  	struct handle_entry *h = malloc(sizeof(*h));
> @@ -271,6 +280,8 @@ static struct intel_allocator *intel_allocator_create(int fd,
>  {
>  	struct intel_allocator *ial = NULL;
>  
> +	igt_assert(can_report_gtt_size(fd));
> +

Is igt_assert correct here (as opposed to igt_require)? Or in other
words, is inability to report gtt size a kernel bug or not?


-- 
Petri Latvala
_______________________________________________
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 Check the file descriptor while opening intel allocator
  2021-06-16 11:37 [igt-dev] [PATCH i-g-t 0/1] Check the file descriptor while opening intel allocator Andrzej Turko
  2021-06-16 11:37 ` [igt-dev] [PATCH i-g-t 1/1] lib/intel_allocator: Check validity of the file descriptor Andrzej Turko
@ 2021-06-16 15:25 ` Patchwork
  2021-06-16 17:13 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  2 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2021-06-16 15:25 UTC (permalink / raw)
  To: Andrzej Turko; +Cc: igt-dev


[-- Attachment #1.1: Type: text/plain, Size: 1867 bytes --]

== Series Details ==

Series: Check the file descriptor while opening intel allocator
URL   : https://patchwork.freedesktop.org/series/91568/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_10229 -> IGTPW_5930
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

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

### IGT changes ###

#### Issues hit ####

  * igt@amdgpu/amd_cs_nop@sync-fork-compute0:
    - fi-kbl-soraka:      NOTRUN -> [SKIP][1] ([fdo#109271]) +8 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/fi-kbl-soraka/igt@amdgpu/amd_cs_nop@sync-fork-compute0.html

  * igt@runner@aborted:
    - fi-bdw-5557u:       NOTRUN -> [FAIL][2] ([i915#1602] / [i915#2029])
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/fi-bdw-5557u/igt@runner@aborted.html

  
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602
  [i915#2029]: https://gitlab.freedesktop.org/drm/intel/issues/2029


Participating hosts (43 -> 37)
------------------------------

  Missing    (6): fi-ilk-m540 fi-hsw-4200u fi-bsw-cyan fi-ctg-p8600 fi-dg1-1 fi-bdw-samus 


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6109 -> IGTPW_5930

  CI-20190529: 20190529
  CI_DRM_10229: 4c226c5bfb5fb04f774d9978412f7f5ff6a178ab @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_5930: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/index.html
  IGT_6109: 61ba2ed489540e6a8a649be38abb075b3ab4d28a @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/index.html

[-- Attachment #1.2: Type: text/html, Size: 2483 bytes --]

[-- Attachment #2: Type: text/plain, Size: 154 bytes --]

_______________________________________________
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: success for Check the file descriptor while opening intel allocator
  2021-06-16 11:37 [igt-dev] [PATCH i-g-t 0/1] Check the file descriptor while opening intel allocator Andrzej Turko
  2021-06-16 11:37 ` [igt-dev] [PATCH i-g-t 1/1] lib/intel_allocator: Check validity of the file descriptor Andrzej Turko
  2021-06-16 15:25 ` [igt-dev] ✓ Fi.CI.BAT: success for Check the file descriptor while opening intel allocator Patchwork
@ 2021-06-16 17:13 ` Patchwork
  2 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2021-06-16 17:13 UTC (permalink / raw)
  To: Andrzej Turko; +Cc: igt-dev


[-- Attachment #1.1: Type: text/plain, Size: 30273 bytes --]

== Series Details ==

Series: Check the file descriptor while opening intel allocator
URL   : https://patchwork.freedesktop.org/series/91568/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_10229_full -> IGTPW_5930_full
====================================================

Summary
-------

  **WARNING**

  Minor unknown changes coming with IGTPW_5930_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_5930_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_5930/index.html

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

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

### IGT changes ###

#### Warnings ####

  * igt@gem_workarounds@suspend-resume:
    - shard-apl:          [DMESG-WARN][1] ([i915#180]) -> [INCOMPLETE][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-apl8/igt@gem_workarounds@suspend-resume.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl3/igt@gem_workarounds@suspend-resume.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@device_reset@unbind-reset-rebind:
    - shard-glk:          [PASS][3] -> [DMESG-WARN][4] ([i915#2283])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-glk1/igt@device_reset@unbind-reset-rebind.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-glk3/igt@device_reset@unbind-reset-rebind.html
    - shard-apl:          [PASS][5] -> [DMESG-WARN][6] ([i915#2283])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-apl1/igt@device_reset@unbind-reset-rebind.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl2/igt@device_reset@unbind-reset-rebind.html
    - shard-kbl:          [PASS][7] -> [DMESG-WARN][8] ([i915#2283])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl2/igt@device_reset@unbind-reset-rebind.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl2/igt@device_reset@unbind-reset-rebind.html
    - shard-iclb:         [PASS][9] -> [DMESG-WARN][10] ([i915#1602] / [i915#2283])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-iclb5/igt@device_reset@unbind-reset-rebind.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb7/igt@device_reset@unbind-reset-rebind.html

  * igt@feature_discovery@display-2x:
    - shard-tglb:         NOTRUN -> [SKIP][11] ([i915#1839])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb3/igt@feature_discovery@display-2x.html
    - shard-iclb:         NOTRUN -> [SKIP][12] ([i915#1839])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb2/igt@feature_discovery@display-2x.html

  * igt@gem_ctx_persistence@legacy-engines-mixed-process:
    - shard-snb:          NOTRUN -> [SKIP][13] ([fdo#109271] / [i915#1099]) +5 similar issues
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-snb2/igt@gem_ctx_persistence@legacy-engines-mixed-process.html

  * igt@gem_exec_fair@basic-flow@rcs0:
    - shard-tglb:         [PASS][14] -> [FAIL][15] ([i915#2842])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-tglb2/igt@gem_exec_fair@basic-flow@rcs0.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb3/igt@gem_exec_fair@basic-flow@rcs0.html

  * igt@gem_exec_fair@basic-none@rcs0:
    - shard-glk:          [PASS][16] -> [FAIL][17] ([i915#2842])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-glk7/igt@gem_exec_fair@basic-none@rcs0.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-glk4/igt@gem_exec_fair@basic-none@rcs0.html

  * igt@gem_pread@exhaustion:
    - shard-apl:          NOTRUN -> [WARN][18] ([i915#2658])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl8/igt@gem_pread@exhaustion.html

  * igt@gem_pwrite@basic-exhaustion:
    - shard-kbl:          NOTRUN -> [WARN][19] ([i915#2658])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl4/igt@gem_pwrite@basic-exhaustion.html

  * igt@gem_render_copy@yf-tiled-to-vebox-yf-tiled:
    - shard-iclb:         NOTRUN -> [SKIP][20] ([i915#768])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb7/igt@gem_render_copy@yf-tiled-to-vebox-yf-tiled.html

  * igt@gem_userptr_blits@dmabuf-sync:
    - shard-apl:          NOTRUN -> [SKIP][21] ([fdo#109271] / [i915#3323])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl3/igt@gem_userptr_blits@dmabuf-sync.html

  * igt@gem_userptr_blits@readonly-unsync:
    - shard-tglb:         NOTRUN -> [SKIP][22] ([i915#3297])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb5/igt@gem_userptr_blits@readonly-unsync.html
    - shard-iclb:         NOTRUN -> [SKIP][23] ([i915#3297])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb7/igt@gem_userptr_blits@readonly-unsync.html

  * igt@gem_userptr_blits@vma-merge:
    - shard-snb:          NOTRUN -> [FAIL][24] ([i915#2724])
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-snb5/igt@gem_userptr_blits@vma-merge.html
    - shard-apl:          NOTRUN -> [FAIL][25] ([i915#3318])
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl1/igt@gem_userptr_blits@vma-merge.html

  * igt@gen7_exec_parse@cmd-crossing-page:
    - shard-tglb:         NOTRUN -> [SKIP][26] ([fdo#109289])
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb5/igt@gen7_exec_parse@cmd-crossing-page.html
    - shard-iclb:         NOTRUN -> [SKIP][27] ([fdo#109289])
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb3/igt@gen7_exec_parse@cmd-crossing-page.html

  * igt@gen9_exec_parse@batch-without-end:
    - shard-iclb:         NOTRUN -> [SKIP][28] ([fdo#112306])
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb1/igt@gen9_exec_parse@batch-without-end.html
    - shard-tglb:         NOTRUN -> [SKIP][29] ([fdo#112306])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb7/igt@gen9_exec_parse@batch-without-end.html

  * igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-dp:
    - shard-apl:          NOTRUN -> [SKIP][30] ([fdo#109271] / [i915#1937])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl7/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-dp.html

  * igt@i915_query@query-garbage:
    - shard-kbl:          [PASS][31] -> [DMESG-WARN][32] ([i915#165] / [i915#180])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl3/igt@i915_query@query-garbage.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl1/igt@i915_query@query-garbage.html

  * igt@i915_suspend@sysfs-reader:
    - shard-apl:          NOTRUN -> [DMESG-WARN][33] ([i915#180]) +1 similar issue
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl3/igt@i915_suspend@sysfs-reader.html

  * igt@kms_big_fb@linear-64bpp-rotate-90:
    - shard-iclb:         NOTRUN -> [SKIP][34] ([fdo#110725] / [fdo#111614])
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb6/igt@kms_big_fb@linear-64bpp-rotate-90.html
    - shard-tglb:         NOTRUN -> [SKIP][35] ([fdo#111614])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb8/igt@kms_big_fb@linear-64bpp-rotate-90.html

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-0:
    - shard-tglb:         NOTRUN -> [SKIP][36] ([fdo#111615])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb7/igt@kms_big_fb@yf-tiled-64bpp-rotate-0.html
    - shard-iclb:         NOTRUN -> [SKIP][37] ([fdo#110723])
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb1/igt@kms_big_fb@yf-tiled-64bpp-rotate-0.html

  * igt@kms_chamelium@dp-edid-change-during-suspend:
    - shard-apl:          NOTRUN -> [SKIP][38] ([fdo#109271] / [fdo#111827]) +22 similar issues
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl7/igt@kms_chamelium@dp-edid-change-during-suspend.html

  * igt@kms_chamelium@dp-hpd-enable-disable-mode:
    - shard-tglb:         NOTRUN -> [SKIP][39] ([fdo#109284] / [fdo#111827]) +5 similar issues
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb2/igt@kms_chamelium@dp-hpd-enable-disable-mode.html

  * igt@kms_chamelium@vga-hpd-without-ddc:
    - shard-snb:          NOTRUN -> [SKIP][40] ([fdo#109271] / [fdo#111827]) +32 similar issues
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-snb7/igt@kms_chamelium@vga-hpd-without-ddc.html

  * igt@kms_color@pipe-a-gamma:
    - shard-tglb:         [PASS][41] -> [FAIL][42] ([i915#1149])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-tglb7/igt@kms_color@pipe-a-gamma.html
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb5/igt@kms_color@pipe-a-gamma.html

  * igt@kms_color_chamelium@pipe-b-ctm-0-25:
    - shard-kbl:          NOTRUN -> [SKIP][43] ([fdo#109271] / [fdo#111827]) +11 similar issues
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl4/igt@kms_color_chamelium@pipe-b-ctm-0-25.html

  * igt@kms_color_chamelium@pipe-c-gamma:
    - shard-iclb:         NOTRUN -> [SKIP][44] ([fdo#109284] / [fdo#111827]) +5 similar issues
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb6/igt@kms_color_chamelium@pipe-c-gamma.html
    - shard-glk:          NOTRUN -> [SKIP][45] ([fdo#109271] / [fdo#111827]) +5 similar issues
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-glk9/igt@kms_color_chamelium@pipe-c-gamma.html

  * igt@kms_content_protection@srm:
    - shard-apl:          NOTRUN -> [TIMEOUT][46] ([i915#1319])
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl7/igt@kms_content_protection@srm.html

  * igt@kms_cursor_crc@pipe-b-cursor-512x512-offscreen:
    - shard-iclb:         NOTRUN -> [SKIP][47] ([fdo#109278] / [fdo#109279])
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb8/igt@kms_cursor_crc@pipe-b-cursor-512x512-offscreen.html
    - shard-tglb:         NOTRUN -> [SKIP][48] ([fdo#109279] / [i915#3359])
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb2/igt@kms_cursor_crc@pipe-b-cursor-512x512-offscreen.html

  * igt@kms_cursor_crc@pipe-d-cursor-32x10-offscreen:
    - shard-iclb:         NOTRUN -> [SKIP][49] ([fdo#109278]) +4 similar issues
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb3/igt@kms_cursor_crc@pipe-d-cursor-32x10-offscreen.html
    - shard-glk:          NOTRUN -> [SKIP][50] ([fdo#109271]) +31 similar issues
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-glk9/igt@kms_cursor_crc@pipe-d-cursor-32x10-offscreen.html
    - shard-tglb:         NOTRUN -> [SKIP][51] ([i915#3359]) +1 similar issue
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb3/igt@kms_cursor_crc@pipe-d-cursor-32x10-offscreen.html

  * igt@kms_cursor_crc@pipe-d-cursor-suspend:
    - shard-kbl:          NOTRUN -> [SKIP][52] ([fdo#109271]) +136 similar issues
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl4/igt@kms_cursor_crc@pipe-d-cursor-suspend.html

  * igt@kms_cursor_edge_walk@pipe-d-128x128-right-edge:
    - shard-snb:          NOTRUN -> [SKIP][53] ([fdo#109271]) +590 similar issues
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-snb2/igt@kms_cursor_edge_walk@pipe-d-128x128-right-edge.html

  * igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic:
    - shard-iclb:         NOTRUN -> [SKIP][54] ([fdo#109274] / [fdo#109278])
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb2/igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic.html

  * igt@kms_flip@2x-nonexisting-fb-interruptible:
    - shard-iclb:         NOTRUN -> [SKIP][55] ([fdo#109274]) +1 similar issue
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb2/igt@kms_flip@2x-nonexisting-fb-interruptible.html

  * igt@kms_flip@flip-vs-suspend-interruptible@a-dp1:
    - shard-kbl:          [PASS][56] -> [DMESG-WARN][57] ([i915#180]) +5 similar issues
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl2/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl3/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile:
    - shard-apl:          NOTRUN -> [SKIP][58] ([fdo#109271] / [i915#2642])
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile.html

  * igt@kms_force_connector_basic@force-load-detect:
    - shard-iclb:         NOTRUN -> [SKIP][59] ([fdo#109285])
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb2/igt@kms_force_connector_basic@force-load-detect.html
    - shard-tglb:         NOTRUN -> [SKIP][60] ([fdo#109285])
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb6/igt@kms_force_connector_basic@force-load-detect.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt:
    - shard-iclb:         NOTRUN -> [SKIP][61] ([fdo#109280]) +8 similar issues
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-pwrite:
    - shard-tglb:         NOTRUN -> [SKIP][62] ([fdo#111825]) +11 similar issues
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb1/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-pwrite.html

  * igt@kms_hdr@static-toggle-suspend:
    - shard-tglb:         NOTRUN -> [SKIP][63] ([i915#1187])
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb6/igt@kms_hdr@static-toggle-suspend.html
    - shard-iclb:         NOTRUN -> [SKIP][64] ([i915#1187])
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb5/igt@kms_hdr@static-toggle-suspend.html

  * igt@kms_pipe_crc_basic@disable-crc-after-crtc-pipe-d:
    - shard-kbl:          NOTRUN -> [SKIP][65] ([fdo#109271] / [i915#533])
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl7/igt@kms_pipe_crc_basic@disable-crc-after-crtc-pipe-d.html

  * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
    - shard-apl:          [PASS][66] -> [DMESG-WARN][67] ([i915#180])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-apl7/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b.html
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl7/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b.html

  * igt@kms_plane_alpha_blend@pipe-b-alpha-basic:
    - shard-kbl:          NOTRUN -> [FAIL][68] ([fdo#108145] / [i915#265]) +1 similar issue
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl4/igt@kms_plane_alpha_blend@pipe-b-alpha-basic.html

  * igt@kms_plane_alpha_blend@pipe-b-constant-alpha-max:
    - shard-glk:          NOTRUN -> [FAIL][69] ([fdo#108145] / [i915#265])
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-glk7/igt@kms_plane_alpha_blend@pipe-b-constant-alpha-max.html
    - shard-apl:          NOTRUN -> [FAIL][70] ([fdo#108145] / [i915#265]) +2 similar issues
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl6/igt@kms_plane_alpha_blend@pipe-b-constant-alpha-max.html

  * igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb:
    - shard-apl:          NOTRUN -> [FAIL][71] ([i915#265])
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl8/igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb.html

  * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-4:
    - shard-apl:          NOTRUN -> [SKIP][72] ([fdo#109271] / [i915#658]) +6 similar issues
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl1/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-4.html

  * igt@kms_psr@psr2_cursor_blt:
    - shard-iclb:         NOTRUN -> [SKIP][73] ([fdo#109441]) +2 similar issues
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb1/igt@kms_psr@psr2_cursor_blt.html

  * igt@kms_psr@psr2_primary_mmap_cpu:
    - shard-iclb:         [PASS][74] -> [SKIP][75] ([fdo#109441]) +2 similar issues
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-iclb2/igt@kms_psr@psr2_primary_mmap_cpu.html
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb7/igt@kms_psr@psr2_primary_mmap_cpu.html

  * igt@kms_psr@psr2_primary_mmap_gtt:
    - shard-tglb:         NOTRUN -> [FAIL][76] ([i915#132] / [i915#3467]) +2 similar issues
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb8/igt@kms_psr@psr2_primary_mmap_gtt.html

  * igt@nouveau_crc@pipe-b-ctx-flip-skip-current-frame:
    - shard-apl:          NOTRUN -> [SKIP][77] ([fdo#109271]) +235 similar issues
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl8/igt@nouveau_crc@pipe-b-ctx-flip-skip-current-frame.html

  * igt@perf_pmu@event-wait@rcs0:
    - shard-iclb:         NOTRUN -> [SKIP][78] ([fdo#112283])
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb5/igt@perf_pmu@event-wait@rcs0.html
    - shard-tglb:         NOTRUN -> [SKIP][79] ([fdo#112283])
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb3/igt@perf_pmu@event-wait@rcs0.html

  * igt@prime_nv_api@i915_self_import_to_different_fd:
    - shard-tglb:         NOTRUN -> [SKIP][80] ([fdo#109291]) +1 similar issue
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb5/igt@prime_nv_api@i915_self_import_to_different_fd.html

  * igt@prime_nv_test@i915_import_cpu_mmap:
    - shard-iclb:         NOTRUN -> [SKIP][81] ([fdo#109291])
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb3/igt@prime_nv_test@i915_import_cpu_mmap.html

  * igt@sysfs_clients@split-25:
    - shard-tglb:         NOTRUN -> [SKIP][82] ([i915#2994]) +1 similar issue
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb5/igt@sysfs_clients@split-25.html
    - shard-glk:          NOTRUN -> [SKIP][83] ([fdo#109271] / [i915#2994]) +1 similar issue
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-glk3/igt@sysfs_clients@split-25.html
    - shard-apl:          NOTRUN -> [SKIP][84] ([fdo#109271] / [i915#2994]) +3 similar issues
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl2/igt@sysfs_clients@split-25.html

  * igt@sysfs_clients@split-50:
    - shard-kbl:          NOTRUN -> [SKIP][85] ([fdo#109271] / [i915#2994]) +2 similar issues
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl7/igt@sysfs_clients@split-50.html
    - shard-iclb:         NOTRUN -> [SKIP][86] ([i915#2994]) +1 similar issue
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb5/igt@sysfs_clients@split-50.html

  * igt@tools_test@sysfs_l3_parity:
    - shard-iclb:         NOTRUN -> [SKIP][87] ([fdo#109307])
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb1/igt@tools_test@sysfs_l3_parity.html
    - shard-tglb:         NOTRUN -> [SKIP][88] ([fdo#109307])
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-tglb7/igt@tools_test@sysfs_l3_parity.html

  
#### Possible fixes ####

  * igt@gem_eio@unwedge-stress:
    - shard-iclb:         [TIMEOUT][89] ([i915#2369] / [i915#2481] / [i915#3070]) -> [PASS][90]
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-iclb1/igt@gem_eio@unwedge-stress.html
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb4/igt@gem_eio@unwedge-stress.html

  * igt@gem_exec_fair@basic-deadline:
    - shard-kbl:          [FAIL][91] ([i915#2846]) -> [PASS][92]
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl6/igt@gem_exec_fair@basic-deadline.html
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl4/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - shard-glk:          [FAIL][93] ([i915#2842]) -> [PASS][94]
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-glk2/igt@gem_exec_fair@basic-none-share@rcs0.html
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-glk4/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-none-vip@rcs0:
    - shard-iclb:         [FAIL][95] ([i915#2842]) -> [PASS][96]
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-iclb3/igt@gem_exec_fair@basic-none-vip@rcs0.html
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb7/igt@gem_exec_fair@basic-none-vip@rcs0.html

  * igt@gem_exec_fair@basic-none@vcs0:
    - shard-kbl:          [FAIL][97] ([i915#2842]) -> [PASS][98] +3 similar issues
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl7/igt@gem_exec_fair@basic-none@vcs0.html
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl7/igt@gem_exec_fair@basic-none@vcs0.html

  * igt@gem_ppgtt@flink-and-close-vma-leak:
    - shard-glk:          [FAIL][99] ([i915#644]) -> [PASS][100]
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-glk4/igt@gem_ppgtt@flink-and-close-vma-leak.html
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-glk3/igt@gem_ppgtt@flink-and-close-vma-leak.html

  * igt@kms_big_fb@x-tiled-32bpp-rotate-180:
    - shard-glk:          [DMESG-WARN][101] ([i915#118] / [i915#95]) -> [PASS][102] +1 similar issue
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-glk6/igt@kms_big_fb@x-tiled-32bpp-rotate-180.html
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-glk9/igt@kms_big_fb@x-tiled-32bpp-rotate-180.html

  * igt@kms_cursor_crc@pipe-c-cursor-suspend:
    - shard-apl:          [DMESG-WARN][103] ([i915#180]) -> [PASS][104]
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-apl7/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-apl7/igt@kms_cursor_crc@pipe-c-cursor-suspend.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a2:
    - shard-glk:          [FAIL][105] ([i915#79]) -> [PASS][106]
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-glk3/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a2.html
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-glk7/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a2.html

  * igt@kms_frontbuffer_tracking@fbc-suspend:
    - shard-kbl:          [DMESG-WARN][107] ([i915#180]) -> [PASS][108] +6 similar issues
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl3/igt@kms_frontbuffer_tracking@fbc-suspend.html
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl6/igt@kms_frontbuffer_tracking@fbc-suspend.html

  * igt@kms_psr2_su@page_flip:
    - shard-iclb:         [SKIP][109] ([fdo#109642] / [fdo#111068] / [i915#658]) -> [PASS][110]
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-iclb6/igt@kms_psr2_su@page_flip.html
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb2/igt@kms_psr2_su@page_flip.html

  * igt@kms_psr@psr2_cursor_plane_onoff:
    - shard-iclb:         [SKIP][111] ([fdo#109441]) -> [PASS][112]
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-iclb7/igt@kms_psr@psr2_cursor_plane_onoff.html
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb2/igt@kms_psr@psr2_cursor_plane_onoff.html

  
#### Warnings ####

  * igt@kms_psr2_sf@plane-move-sf-dmg-area-0:
    - shard-iclb:         [SKIP][113] ([i915#658]) -> [SKIP][114] ([i915#2920]) +2 similar issues
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-iclb5/igt@kms_psr2_sf@plane-move-sf-dmg-area-0.html
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb2/igt@kms_psr2_sf@plane-move-sf-dmg-area-0.html

  * igt@kms_psr2_sf@plane-move-sf-dmg-area-3:
    - shard-iclb:         [SKIP][115] ([i915#2920]) -> [SKIP][116] ([i915#658]) +1 similar issue
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-iclb2/igt@kms_psr2_sf@plane-move-sf-dmg-area-3.html
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb3/igt@kms_psr2_sf@plane-move-sf-dmg-area-3.html

  * igt@runner@aborted:
    - shard-kbl:          ([FAIL][117], [FAIL][118], [FAIL][119], [FAIL][120], [FAIL][121], [FAIL][122], [FAIL][123], [FAIL][124], [FAIL][125]) ([fdo#109271] / [i915#1436] / [i915#180] / [i915#1814] / [i915#2505] / [i915#3002] / [i915#3363] / [i915#92]) -> ([FAIL][126], [FAIL][127], [FAIL][128], [FAIL][129], [FAIL][130], [FAIL][131], [FAIL][132]) ([i915#180] / [i915#1814] / [i915#3002] / [i915#3363])
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl4/igt@runner@aborted.html
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl6/igt@runner@aborted.html
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl2/igt@runner@aborted.html
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl1/igt@runner@aborted.html
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl1/igt@runner@aborted.html
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl3/igt@runner@aborted.html
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl1/igt@runner@aborted.html
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl3/igt@runner@aborted.html
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-kbl1/igt@runner@aborted.html
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl3/igt@runner@aborted.html
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl3/igt@runner@aborted.html
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl2/igt@runner@aborted.html
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl1/igt@runner@aborted.html
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl1/igt@runner@aborted.html
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl1/igt@runner@aborted.html
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-kbl3/igt@runner@aborted.html
    - shard-iclb:         ([FAIL][133], [FAIL][134]) ([i915#3002]) -> ([FAIL][135], [FAIL][136], [FAIL][137]) ([i915#2283] / [i915#3002])
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-iclb5/igt@runner@aborted.html
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10229/shard-iclb2/igt@runner@aborted.html
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb7/igt@runner@aborted.html
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb7/igt@runner@aborted.html
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/shard-iclb8/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#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
  [fdo#109307]: https://bugs.freedesktop.org/show_bug.cgi?id=109307
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
  [fdo#112306]: https://bugs.freedesktop.org/show_bug.cgi?id=112306
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#1149]: https://gitlab.freedesktop.org/drm/intel/issues/1149
  [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
  [i915#1187]: https://gitlab.freedesktop.org/drm/intel/issues/1187
  [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436
  [i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602
  [i915#165]: https://gitlab.freedesktop.org/drm/intel/issues/165
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1814]: https://gitlab.freedesktop.org/drm/intel/issues/1814
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1937]: https://gitlab.freedesktop.org/drm/intel/issues/1937
  [i915#2283]: https://gitlab.freedesktop.org/drm/intel/issues/2283
  [i915#2369]: https://gitlab.freedesktop.org/drm/intel/issues/2369
  [i915#2481]: https://gitlab.freedesktop.org/drm/intel/issues/2481
  [i915#2505]: https://gitlab.freedesktop.org/drm/intel/issues/2505
  [i915#2642]: https://gitlab.freedesktop.org/drm/intel/issues/2642
  [i915#265

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5930/index.html

[-- Attachment #1.2: Type: text/html, Size: 37077 bytes --]

[-- Attachment #2: Type: text/plain, Size: 154 bytes --]

_______________________________________________
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] lib/intel_allocator: Check validity of the file descriptor
  2021-06-16 12:05   ` Petri Latvala
@ 2021-06-17  6:06     ` Zbigniew Kempczyński
  2021-06-17  6:42       ` Petri Latvala
  0 siblings, 1 reply; 8+ messages in thread
From: Zbigniew Kempczyński @ 2021-06-17  6:06 UTC (permalink / raw)
  To: Petri Latvala; +Cc: igt-dev

On Wed, Jun 16, 2021 at 03:05:50PM +0300, Petri Latvala wrote:
> On Wed, Jun 16, 2021 at 01:37:14PM +0200, Andrzej Turko wrote:
> > All procedures for opening particular types of allocators
> > query the gtt size. Even if the user has provided the
> > boundaries of the address space managed by the allocator,
> > the query is performed for the sake of validation.
> > 
> > gem_aperture_size() called with an invalid id returns a
> > default value instead of failing. Thus, we need to
> > additionally check whether the file descriptor is valid.
> > 
> > Signed-off-by: Andrzej Turko <andrzej.turko@linux.intel.com>
> > Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
> > ---
> >  lib/intel_allocator.c | 11 +++++++++++
> >  1 file changed, 11 insertions(+)
> > 
> > diff --git a/lib/intel_allocator.c b/lib/intel_allocator.c
> > index 96f839d4b..c060e10c3 100644
> > --- a/lib/intel_allocator.c
> > +++ b/lib/intel_allocator.c
> > @@ -166,6 +166,15 @@ static inline void map_entry_free_func(struct igt_map_entry *entry)
> >  	free(entry->data);
> >  }
> >  
> > +static bool can_report_gtt_size(int fd)
> > +{
> > +	struct drm_i915_gem_context_param p = {
> > +		.param = I915_CONTEXT_PARAM_GTT_SIZE
> > +	};
> > +
> > +	return (__gem_context_get_param(fd, &p) == 0);
> > +}
> > +
> >  static uint64_t __handle_create(struct allocator *al)
> >  {
> >  	struct handle_entry *h = malloc(sizeof(*h));
> > @@ -271,6 +280,8 @@ static struct intel_allocator *intel_allocator_create(int fd,
> >  {
> >  	struct intel_allocator *ial = NULL;
> >  
> > +	igt_assert(can_report_gtt_size(fd));
> > +
> 
> Is igt_assert correct here (as opposed to igt_require)? Or in other
> words, is inability to report gtt size a kernel bug or not?

In this case yes, we want to assert. Let me try to explain the scenario.


1. allocator thread acts for children, for example we got 
   fd i915 == 3 and ctx == 0

2. child 1 does: 
   
   ahnd = intel_allocator_open(i915 == 3, ctx == 0);

   -> allocator (inside simple) calls gem_aperture_size(i915)
      to find out vm size - this works perfect

3. child 2 does: 
   
   i915 = gem_reopen_driver(i915);
   ahnd = intel_allocator_open(i915 == 5, ctx == 0);

   -> allocator does same what child 1, but gem_aperture_size(i915)
      is called on invalid from allocator process handle. 
   
Current implementation of gem_aperture_size() calls 
gem_global_aperture_size() what resets errno on error returning
predefined 256MB size.

We want to avoid such mistakes in the future in allocator. Plan is:

1. introduce igt_assert() on such case. Currently does nothing because
   there's no test who does child 2 scenario (but soon will be).

2. put failing test to api_intel_allocator.c (which exercise above 
   child 2 scenario).

3. fix allocator -> drop calling gem_aperture_size() on allocator
   thread and move it to the caller (it has active fd to kernel).
   Thats will drop allocator thread i915 fd dependency and this 
   is what we want.

One scenario is we cannot handle - two or more children reopens 
driver. In such case they may have same i915 fd so they starts
sharing vm instead having separate. But we still have possibility
to use (i915, vm) as a key so in such scenario we may use child
pid as vmid, then each child will have separate vm for allocations.
Or if child will call intel_allocator_init() it will totally 
drop allocator thread arbitration -> this reinitializes allocator
data within child so it comes standalone allocator.

--
Zbigniew


> 
> 
> -- 
> Petri Latvala
> _______________________________________________
> igt-dev mailing list
> igt-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev
_______________________________________________
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] lib/intel_allocator: Check validity of the file descriptor
  2021-06-17  6:06     ` Zbigniew Kempczyński
@ 2021-06-17  6:42       ` Petri Latvala
  0 siblings, 0 replies; 8+ messages in thread
From: Petri Latvala @ 2021-06-17  6:42 UTC (permalink / raw)
  To: Zbigniew Kempczyński; +Cc: igt-dev

On Thu, Jun 17, 2021 at 08:06:46AM +0200, Zbigniew Kempczyński wrote:
> On Wed, Jun 16, 2021 at 03:05:50PM +0300, Petri Latvala wrote:
> > On Wed, Jun 16, 2021 at 01:37:14PM +0200, Andrzej Turko wrote:
> > > All procedures for opening particular types of allocators
> > > query the gtt size. Even if the user has provided the
> > > boundaries of the address space managed by the allocator,
> > > the query is performed for the sake of validation.
> > > 
> > > gem_aperture_size() called with an invalid id returns a
> > > default value instead of failing. Thus, we need to
> > > additionally check whether the file descriptor is valid.
> > > 
> > > Signed-off-by: Andrzej Turko <andrzej.turko@linux.intel.com>
> > > Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
> > > ---
> > >  lib/intel_allocator.c | 11 +++++++++++
> > >  1 file changed, 11 insertions(+)
> > > 
> > > diff --git a/lib/intel_allocator.c b/lib/intel_allocator.c
> > > index 96f839d4b..c060e10c3 100644
> > > --- a/lib/intel_allocator.c
> > > +++ b/lib/intel_allocator.c
> > > @@ -166,6 +166,15 @@ static inline void map_entry_free_func(struct igt_map_entry *entry)
> > >  	free(entry->data);
> > >  }
> > >  
> > > +static bool can_report_gtt_size(int fd)
> > > +{
> > > +	struct drm_i915_gem_context_param p = {
> > > +		.param = I915_CONTEXT_PARAM_GTT_SIZE
> > > +	};
> > > +
> > > +	return (__gem_context_get_param(fd, &p) == 0);
> > > +}
> > > +
> > >  static uint64_t __handle_create(struct allocator *al)
> > >  {
> > >  	struct handle_entry *h = malloc(sizeof(*h));
> > > @@ -271,6 +280,8 @@ static struct intel_allocator *intel_allocator_create(int fd,
> > >  {
> > >  	struct intel_allocator *ial = NULL;
> > >  
> > > +	igt_assert(can_report_gtt_size(fd));
> > > +
> > 
> > Is igt_assert correct here (as opposed to igt_require)? Or in other
> > words, is inability to report gtt size a kernel bug or not?
> 
> In this case yes, we want to assert. Let me try to explain the scenario.
> 
> 
> 1. allocator thread acts for children, for example we got 
>    fd i915 == 3 and ctx == 0
> 
> 2. child 1 does: 
>    
>    ahnd = intel_allocator_open(i915 == 3, ctx == 0);
> 
>    -> allocator (inside simple) calls gem_aperture_size(i915)
>       to find out vm size - this works perfect
> 
> 3. child 2 does: 
>    
>    i915 = gem_reopen_driver(i915);
>    ahnd = intel_allocator_open(i915 == 5, ctx == 0);
> 
>    -> allocator does same what child 1, but gem_aperture_size(i915)
>       is called on invalid from allocator process handle. 
>    
> Current implementation of gem_aperture_size() calls 
> gem_global_aperture_size() what resets errno on error returning
> predefined 256MB size.
> 
> We want to avoid such mistakes in the future in allocator. Plan is:
> 
> 1. introduce igt_assert() on such case. Currently does nothing because
>    there's no test who does child 2 scenario (but soon will be).
> 
> 2. put failing test to api_intel_allocator.c (which exercise above 
>    child 2 scenario).
> 
> 3. fix allocator -> drop calling gem_aperture_size() on allocator
>    thread and move it to the caller (it has active fd to kernel).
>    Thats will drop allocator thread i915 fd dependency and this 
>    is what we want.
> 
> One scenario is we cannot handle - two or more children reopens 
> driver. In such case they may have same i915 fd so they starts
> sharing vm instead having separate. But we still have possibility
> to use (i915, vm) as a key so in such scenario we may use child
> pid as vmid, then each child will have separate vm for allocations.
> Or if child will call intel_allocator_init() it will totally 
> drop allocator thread arbitration -> this reinitializes allocator
> data within child so it comes standalone allocator.


Yeah assert sounds more proper then. Although the best would be an
igt_assert_igt_is_broken_dont_blame_the_kernel() but one must use what
one has...


-- 
Petri Latvala
_______________________________________________
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] lib/intel_allocator: Check validity of the file descriptor
  2021-06-16 11:37 ` [igt-dev] [PATCH i-g-t 1/1] lib/intel_allocator: Check validity of the file descriptor Andrzej Turko
  2021-06-16 12:05   ` Petri Latvala
@ 2021-06-17  7:05   ` Zbigniew Kempczyński
  1 sibling, 0 replies; 8+ messages in thread
From: Zbigniew Kempczyński @ 2021-06-17  7:05 UTC (permalink / raw)
  To: Andrzej Turko; +Cc: igt-dev

On Wed, Jun 16, 2021 at 01:37:14PM +0200, Andrzej Turko wrote:
> All procedures for opening particular types of allocators
> query the gtt size. Even if the user has provided the
> boundaries of the address space managed by the allocator,
> the query is performed for the sake of validation.
> 
> gem_aperture_size() called with an invalid id returns a
> default value instead of failing. Thus, we need to
> additionally check whether the file descriptor is valid.
> 
> Signed-off-by: Andrzej Turko <andrzej.turko@linux.intel.com>
> Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>

Agree, we should catch such situation and prevent user to 
use not valid vm range (invalid fd will get 256M of gtt size
what is bad here).

Assert here is ok, we want to expose invalid use and fix it
in following patches.

Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>

--
Zbigniew


> ---
>  lib/intel_allocator.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/lib/intel_allocator.c b/lib/intel_allocator.c
> index 96f839d4b..c060e10c3 100644
> --- a/lib/intel_allocator.c
> +++ b/lib/intel_allocator.c
> @@ -166,6 +166,15 @@ static inline void map_entry_free_func(struct igt_map_entry *entry)
>  	free(entry->data);
>  }
>  
> +static bool can_report_gtt_size(int fd)
> +{
> +	struct drm_i915_gem_context_param p = {
> +		.param = I915_CONTEXT_PARAM_GTT_SIZE
> +	};
> +
> +	return (__gem_context_get_param(fd, &p) == 0);
> +}
> +
>  static uint64_t __handle_create(struct allocator *al)
>  {
>  	struct handle_entry *h = malloc(sizeof(*h));
> @@ -271,6 +280,8 @@ static struct intel_allocator *intel_allocator_create(int fd,
>  {
>  	struct intel_allocator *ial = NULL;
>  
> +	igt_assert(can_report_gtt_size(fd));
> +
>  	switch (allocator_type) {
>  	/*
>  	 * Few words of explanation is required here.
> -- 
> 2.25.1
> 
_______________________________________________
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:[~2021-06-17  7:05 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-16 11:37 [igt-dev] [PATCH i-g-t 0/1] Check the file descriptor while opening intel allocator Andrzej Turko
2021-06-16 11:37 ` [igt-dev] [PATCH i-g-t 1/1] lib/intel_allocator: Check validity of the file descriptor Andrzej Turko
2021-06-16 12:05   ` Petri Latvala
2021-06-17  6:06     ` Zbigniew Kempczyński
2021-06-17  6:42       ` Petri Latvala
2021-06-17  7:05   ` Zbigniew Kempczyński
2021-06-16 15:25 ` [igt-dev] ✓ Fi.CI.BAT: success for Check the file descriptor while opening intel allocator Patchwork
2021-06-16 17:13 ` [igt-dev] ✓ Fi.CI.IGT: " 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.