All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 1/4] lib/i915/perf: fix intel_perf_devinfo gen field
@ 2020-12-28  3:19 Lionel Landwerlin
  2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 2/4] lib/i915/perf: fill up device name Lionel Landwerlin
                   ` (5 more replies)
  0 siblings, 6 replies; 14+ messages in thread
From: Lionel Landwerlin @ 2020-12-28  3:19 UTC (permalink / raw)
  To: igt-dev

Inadvertently left this field uninitialized (or rather at the wrong 0
value).

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 53f8f541caae20 ("lib: Add i915_perf library")
---
 lib/i915/perf.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/i915/perf.c b/lib/i915/perf.c
index 53c0a9dcc..ef0f0b437 100644
--- a/lib/i915/perf.c
+++ b/lib/i915/perf.c
@@ -168,6 +168,7 @@ intel_perf_for_devinfo(uint32_t device_id,
 	 * 2x6 does not have 2 samplers).
 	 */
 	perf->devinfo.devid = device_id;
+	perf->devinfo.gen = devinfo->gen;
 	perf->devinfo.revision = revision;
 	perf->devinfo.timestamp_frequency = timestamp_frequency;
 	perf->devinfo.gt_min_freq = gt_min_freq;
-- 
2.30.0.rc2

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

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

* [igt-dev] [PATCH i-g-t 2/4] lib/i915/perf: fill up device name
  2020-12-28  3:19 [igt-dev] [PATCH i-g-t 1/4] lib/i915/perf: fix intel_perf_devinfo gen field Lionel Landwerlin
@ 2020-12-28  3:19 ` Lionel Landwerlin
  2021-01-07  0:09   ` Umesh Nerlige Ramappa
  2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 3/4] lib/i915/perf: fill up reader devinfo default field Lionel Landwerlin
                   ` (4 subsequent siblings)
  5 siblings, 1 reply; 14+ messages in thread
From: Lionel Landwerlin @ 2020-12-28  3:19 UTC (permalink / raw)
  To: igt-dev

Forgot to initialize this field.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
---
 lib/i915/perf.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lib/i915/perf.c b/lib/i915/perf.c
index ef0f0b437..f30833787 100644
--- a/lib/i915/perf.c
+++ b/lib/i915/perf.c
@@ -174,6 +174,11 @@ intel_perf_for_devinfo(uint32_t device_id,
 	perf->devinfo.gt_min_freq = gt_min_freq;
 	perf->devinfo.gt_max_freq = gt_max_freq;
 
+	if (devinfo->codename) {
+		snprintf(perf->devinfo.devname, sizeof(perf->devinfo.devname),
+			 "%s", devinfo->codename);
+	}
+
 	/* On Gen11+ the equations from the xml files expect an 8bits
 	 * mask per subslice, versus only 3bits on prior Gens.
 	 */
-- 
2.30.0.rc2

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

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

* [igt-dev] [PATCH i-g-t 3/4] lib/i915/perf: fill up reader devinfo default field
  2020-12-28  3:19 [igt-dev] [PATCH i-g-t 1/4] lib/i915/perf: fix intel_perf_devinfo gen field Lionel Landwerlin
  2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 2/4] lib/i915/perf: fill up device name Lionel Landwerlin
@ 2020-12-28  3:19 ` Lionel Landwerlin
  2021-01-07  0:23   ` Umesh Nerlige Ramappa
  2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 4/4] lib/i915/perf: don't forget last timeline element Lionel Landwerlin
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 14+ messages in thread
From: Lionel Landwerlin @ 2020-12-28  3:19 UTC (permalink / raw)
  To: igt-dev

A bunch of fields were left to 0...

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 43116ee368585d ("lib/i915-perf: add i915 perf data reader")
---
 lib/i915/perf_data_reader.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/lib/i915/perf_data_reader.c b/lib/i915/perf_data_reader.c
index 3b05a2e54..4b68fb502 100644
--- a/lib/i915/perf_data_reader.c
+++ b/lib/i915/perf_data_reader.c
@@ -119,12 +119,13 @@ find_metric_set(struct intel_perf *perf, const char *symbol_name)
 
 static void
 init_devinfo(struct intel_perf_devinfo *perf_devinfo,
+	     struct intel_perf *perf,
 	     const struct intel_device_info *devinfo,
 	     uint32_t devid,
 	     uint64_t timestamp_frequency)
 {
+	*perf_devinfo = perf->devinfo;
 	perf_devinfo->devid = devid;
-	perf_devinfo->gen = devinfo->gen;
 	perf_devinfo->timestamp_frequency = timestamp_frequency;
 }
 
@@ -203,15 +204,15 @@ parse_data(struct intel_perf_data_reader *reader)
 		return false;
 	}
 
-	init_devinfo(&reader->devinfo, devinfo,
-		     record_info->device_id,
-		     record_info->timestamp_frequency);
 	reader->perf = intel_perf_for_devinfo(record_info->device_id,
 					      record_info->device_revision,
 					      record_info->timestamp_frequency,
 					      record_info->gt_min_frequency,
 					      record_info->gt_max_frequency,
 					      &record_topology->topology);
+	init_devinfo(&reader->devinfo, reader->perf, devinfo,
+		     record_info->device_id,
+		     record_info->timestamp_frequency);
 
 	reader->metric_set_name = record_info->metric_set_name;
 	reader->metric_set_uuid = record_info->metric_set_uuid;
-- 
2.30.0.rc2

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

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

* [igt-dev] [PATCH i-g-t 4/4] lib/i915/perf: don't forget last timeline element
  2020-12-28  3:19 [igt-dev] [PATCH i-g-t 1/4] lib/i915/perf: fix intel_perf_devinfo gen field Lionel Landwerlin
  2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 2/4] lib/i915/perf: fill up device name Lionel Landwerlin
  2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 3/4] lib/i915/perf: fill up reader devinfo default field Lionel Landwerlin
@ 2020-12-28  3:19 ` Lionel Landwerlin
  2021-01-07  1:07   ` Umesh Nerlige Ramappa
  2020-12-28  3:53 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/4] lib/i915/perf: fix intel_perf_devinfo gen field Patchwork
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 14+ messages in thread
From: Lionel Landwerlin @ 2020-12-28  3:19 UTC (permalink / raw)
  To: igt-dev

We're currently dropping the last element of the timeline.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 43116ee368585d ("lib/i915-perf: add i915 perf data reader")
---
 lib/i915/perf_data_reader.c | 27 ++++++++++++++++++---------
 1 file changed, 18 insertions(+), 9 deletions(-)

diff --git a/lib/i915/perf_data_reader.c b/lib/i915/perf_data_reader.c
index 4b68fb502..065fe6066 100644
--- a/lib/i915/perf_data_reader.c
+++ b/lib/i915/perf_data_reader.c
@@ -298,17 +298,23 @@ static void
 generate_cpu_events(struct intel_perf_data_reader *reader)
 {
 	uint32_t last_header_idx = 0;
-	const struct drm_i915_perf_record_header *last_header = reader->records[0];
+	const struct drm_i915_perf_record_header *last_header = reader->records[0],
+		*current_header = reader->records[0];
+	const uint8_t *start_report, *end_report;
+	uint32_t last_ctx_id, current_ctx_id;
+	uint64_t gpu_ts_start, gpu_ts_end;
 
 	for (uint32_t i = 1; i < reader->n_records; i++) {
-		const struct drm_i915_perf_record_header *current_header =
-			reader->records[i];
-		const uint8_t *start_report = (const uint8_t *) (last_header + 1),
-			*end_report = (const uint8_t *) (current_header + 1);
-		uint32_t last_ctx_id = oa_report_ctx_id(&reader->devinfo, start_report),
-			current_ctx_id = oa_report_ctx_id(&reader->devinfo, end_report);
-		uint64_t gpu_ts_start = oa_report_timestamp(start_report),
-			gpu_ts_end = oa_report_timestamp(end_report);
+		current_header = reader->records[i];
+
+		start_report = (const uint8_t *) (last_header + 1);
+		end_report = (const uint8_t *) (current_header + 1);
+
+		last_ctx_id = oa_report_ctx_id(&reader->devinfo, start_report);
+		current_ctx_id = oa_report_ctx_id(&reader->devinfo, end_report);
+
+		gpu_ts_start = oa_report_timestamp(start_report);
+		gpu_ts_end = oa_report_timestamp(end_report);
 
 		if (last_ctx_id == current_ctx_id)
 			continue;
@@ -318,6 +324,9 @@ generate_cpu_events(struct intel_perf_data_reader *reader)
 		last_header = current_header;
 		last_header_idx = i;
 	}
+
+	if (last_header != current_header)
+		append_timeline_event(reader, gpu_ts_start, gpu_ts_end, last_header_idx, reader->n_records - 1, last_ctx_id);
 }
 
 static void
-- 
2.30.0.rc2

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

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

* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/4] lib/i915/perf: fix intel_perf_devinfo gen field
  2020-12-28  3:19 [igt-dev] [PATCH i-g-t 1/4] lib/i915/perf: fix intel_perf_devinfo gen field Lionel Landwerlin
                   ` (2 preceding siblings ...)
  2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 4/4] lib/i915/perf: don't forget last timeline element Lionel Landwerlin
@ 2020-12-28  3:53 ` Patchwork
  2020-12-28  5:09 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  2021-01-07  0:07 ` [igt-dev] [PATCH i-g-t 1/4] " Umesh Nerlige Ramappa
  5 siblings, 0 replies; 14+ messages in thread
From: Patchwork @ 2020-12-28  3:53 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: igt-dev


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

== Series Details ==

Series: series starting with [i-g-t,1/4] lib/i915/perf: fix intel_perf_devinfo gen field
URL   : https://patchwork.freedesktop.org/series/85253/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_9528 -> IGTPW_5335
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

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

### IGT changes ###

#### Issues hit ####

  * igt@debugfs_test@read_all_entries:
    - fi-tgl-y:           NOTRUN -> [DMESG-WARN][1] ([i915#402]) +2 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/fi-tgl-y/igt@debugfs_test@read_all_entries.html

  * igt@i915_selftest@live@gt_lrc:
    - fi-tgl-y:           NOTRUN -> [DMESG-FAIL][2] ([i915#2373])
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/fi-tgl-y/igt@i915_selftest@live@gt_lrc.html

  * igt@i915_selftest@live@gt_pm:
    - fi-tgl-y:           NOTRUN -> [DMESG-FAIL][3] ([i915#1759])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/fi-tgl-y/igt@i915_selftest@live@gt_pm.html

  * igt@kms_chamelium@vga-edid-read:
    - fi-tgl-y:           NOTRUN -> [SKIP][4] ([fdo#111827]) +8 similar issues
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/fi-tgl-y/igt@kms_chamelium@vga-edid-read.html

  * igt@kms_force_connector_basic@force-load-detect:
    - fi-tgl-y:           NOTRUN -> [SKIP][5] ([fdo#109285])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/fi-tgl-y/igt@kms_force_connector_basic@force-load-detect.html

  
#### Possible fixes ####

  * igt@kms_chamelium@hdmi-hpd-fast:
    - fi-kbl-7500u:       [DMESG-FAIL][6] ([i915#165]) -> [PASS][7]
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html

  
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#165]: https://gitlab.freedesktop.org/drm/intel/issues/165
  [i915#1759]: https://gitlab.freedesktop.org/drm/intel/issues/1759
  [i915#2373]: https://gitlab.freedesktop.org/drm/intel/issues/2373
  [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402


Participating hosts (38 -> 36)
------------------------------

  Additional (1): fi-tgl-y 
  Missing    (3): fi-dg1-1 fi-bsw-cyan fi-bdw-samus 


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

  * CI: CI-20190529 -> None
  * IGT: IGT_5925 -> IGTPW_5335

  CI-20190529: 20190529
  CI_DRM_9528: 2d13ca3bfcff24ed05e602511a3720d374e1413c @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_5335: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/index.html
  IGT_5925: c8d6184a6185e02fc9f83e3cf3ef50b0a67d981d @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

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

[-- Attachment #1.2: Type: text/html, Size: 3833 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] 14+ messages in thread

* [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/4] lib/i915/perf: fix intel_perf_devinfo gen field
  2020-12-28  3:19 [igt-dev] [PATCH i-g-t 1/4] lib/i915/perf: fix intel_perf_devinfo gen field Lionel Landwerlin
                   ` (3 preceding siblings ...)
  2020-12-28  3:53 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/4] lib/i915/perf: fix intel_perf_devinfo gen field Patchwork
@ 2020-12-28  5:09 ` Patchwork
  2021-01-07  0:07 ` [igt-dev] [PATCH i-g-t 1/4] " Umesh Nerlige Ramappa
  5 siblings, 0 replies; 14+ messages in thread
From: Patchwork @ 2020-12-28  5:09 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: igt-dev


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

== Series Details ==

Series: series starting with [i-g-t,1/4] lib/i915/perf: fix intel_perf_devinfo gen field
URL   : https://patchwork.freedesktop.org/series/85253/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_9528_full -> IGTPW_5335_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_5335_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_5335_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_5335/index.html

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@kms_flip@flip-vs-suspend-interruptible@a-dp1:
    - shard-kbl:          [PASS][1] -> [DMESG-WARN][2] +3 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-kbl2/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl1/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html

  * igt@kms_flip@flip-vs-suspend-interruptible@c-dp1:
    - shard-apl:          [PASS][3] -> [DMESG-WARN][4] +1 similar issue
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-apl4/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-apl4/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html

  * igt@kms_flip@flip-vs-suspend-interruptible@c-hdmi-a1:
    - shard-glk:          [PASS][5] -> [DMESG-WARN][6] +4 similar issues
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-glk8/igt@kms_flip@flip-vs-suspend-interruptible@c-hdmi-a1.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk9/igt@kms_flip@flip-vs-suspend-interruptible@c-hdmi-a1.html

  * igt@kms_frontbuffer_tracking@fbc-suspend:
    - shard-iclb:         [PASS][7] -> [DMESG-WARN][8] +3 similar issues
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb4/igt@kms_frontbuffer_tracking@fbc-suspend.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb3/igt@kms_frontbuffer_tracking@fbc-suspend.html

  
New tests
---------

  New tests have been introduced between CI_DRM_9528_full and IGTPW_5335_full:

### New IGT tests (1) ###

  * igt@gem_exec_schedule@u-independent:
    - Statuses :
    - Exec time: [None] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_ctx_persistence@engines-hostile-preempt:
    - shard-hsw:          NOTRUN -> [SKIP][9] ([fdo#109271] / [i915#1099]) +1 similar issue
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-hsw4/igt@gem_ctx_persistence@engines-hostile-preempt.html

  * igt@gem_ctx_sseu@engines:
    - shard-tglb:         NOTRUN -> [SKIP][10] ([i915#280])
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb8/igt@gem_ctx_sseu@engines.html

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

  * igt@gem_userptr_blits@mmap-offset-invalidate-idle@gtt:
    - shard-tglb:         NOTRUN -> [SKIP][12] ([i915#1317]) +3 similar issues
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb7/igt@gem_userptr_blits@mmap-offset-invalidate-idle@gtt.html

  * igt@gem_userptr_blits@mmap-offset-invalidate-idle@uc:
    - shard-iclb:         NOTRUN -> [SKIP][13] ([i915#1317]) +3 similar issues
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb4/igt@gem_userptr_blits@mmap-offset-invalidate-idle@uc.html

  * igt@gem_userptr_blits@mmap-offset-invalidate-idle@wb:
    - shard-glk:          NOTRUN -> [SKIP][14] ([fdo#109271]) +66 similar issues
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk6/igt@gem_userptr_blits@mmap-offset-invalidate-idle@wb.html

  * igt@gem_userptr_blits@readonly-unsync:
    - shard-tglb:         NOTRUN -> [SKIP][15] ([fdo#110426] / [i915#1704])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb5/igt@gem_userptr_blits@readonly-unsync.html
    - shard-iclb:         NOTRUN -> [SKIP][16] ([fdo#110426] / [i915#1704])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb3/igt@gem_userptr_blits@readonly-unsync.html

  * igt@gen9_exec_parse@valid-registers:
    - shard-iclb:         NOTRUN -> [SKIP][17] ([fdo#112306])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb2/igt@gen9_exec_parse@valid-registers.html
    - shard-tglb:         NOTRUN -> [SKIP][18] ([fdo#112306])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb1/igt@gen9_exec_parse@valid-registers.html

  * igt@i915_pm_dc@dc3co-vpb-simulation:
    - shard-glk:          NOTRUN -> [SKIP][19] ([fdo#109271] / [i915#658])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk8/igt@i915_pm_dc@dc3co-vpb-simulation.html

  * igt@i915_pm_dc@dc6-dpms:
    - shard-kbl:          NOTRUN -> [FAIL][20] ([i915#454])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl6/igt@i915_pm_dc@dc6-dpms.html
    - shard-tglb:         NOTRUN -> [FAIL][21] ([i915#454])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb5/igt@i915_pm_dc@dc6-dpms.html

  * igt@i915_pm_dc@dc6-psr:
    - shard-iclb:         [PASS][22] -> [FAIL][23] ([i915#454])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb8/igt@i915_pm_dc@dc6-psr.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb6/igt@i915_pm_dc@dc6-psr.html

  * igt@i915_pm_rpm@dpms-lpsp:
    - shard-iclb:         [PASS][24] -> [SKIP][25] ([i915#579])
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb1/igt@i915_pm_rpm@dpms-lpsp.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb3/igt@i915_pm_rpm@dpms-lpsp.html
    - shard-tglb:         [PASS][26] -> [SKIP][27] ([i915#579])
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-tglb5/igt@i915_pm_rpm@dpms-lpsp.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb5/igt@i915_pm_rpm@dpms-lpsp.html

  * igt@i915_selftest@live@gem_contexts:
    - shard-glk:          [PASS][28] -> [INCOMPLETE][29] ([i915#2369])
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-glk9/igt@i915_selftest@live@gem_contexts.html
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk9/igt@i915_selftest@live@gem_contexts.html

  * igt@kms_big_fb@x-tiled-8bpp-rotate-270:
    - shard-iclb:         NOTRUN -> [SKIP][30] ([fdo#110725] / [fdo#111614]) +1 similar issue
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb8/igt@kms_big_fb@x-tiled-8bpp-rotate-270.html

  * igt@kms_big_fb@y-tiled-8bpp-rotate-90:
    - shard-tglb:         NOTRUN -> [SKIP][31] ([fdo#111614]) +1 similar issue
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb2/igt@kms_big_fb@y-tiled-8bpp-rotate-90.html

  * igt@kms_chamelium@hdmi-edid-change-during-suspend:
    - shard-apl:          NOTRUN -> [SKIP][32] ([fdo#109271] / [fdo#111827]) +6 similar issues
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-apl4/igt@kms_chamelium@hdmi-edid-change-during-suspend.html

  * igt@kms_chamelium@vga-hpd-after-suspend:
    - shard-kbl:          NOTRUN -> [SKIP][33] ([fdo#109271] / [fdo#111827]) +6 similar issues
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl7/igt@kms_chamelium@vga-hpd-after-suspend.html

  * igt@kms_color@pipe-a-ctm-0-75:
    - shard-tglb:         NOTRUN -> [FAIL][34] ([i915#1149] / [i915#315]) +1 similar issue
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb5/igt@kms_color@pipe-a-ctm-0-75.html

  * igt@kms_color@pipe-b-ctm-0-25:
    - shard-iclb:         NOTRUN -> [FAIL][35] ([i915#1149] / [i915#315]) +1 similar issue
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb4/igt@kms_color@pipe-b-ctm-0-25.html

  * igt@kms_color_chamelium@pipe-a-ctm-0-5:
    - shard-iclb:         NOTRUN -> [SKIP][36] ([fdo#109284] / [fdo#111827]) +5 similar issues
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb1/igt@kms_color_chamelium@pipe-a-ctm-0-5.html
    - shard-hsw:          NOTRUN -> [SKIP][37] ([fdo#109271] / [fdo#111827]) +3 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-hsw4/igt@kms_color_chamelium@pipe-a-ctm-0-5.html

  * igt@kms_color_chamelium@pipe-a-ctm-limited-range:
    - shard-glk:          NOTRUN -> [SKIP][38] ([fdo#109271] / [fdo#111827]) +8 similar issues
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk7/igt@kms_color_chamelium@pipe-a-ctm-limited-range.html

  * igt@kms_color_chamelium@pipe-d-ctm-red-to-blue:
    - shard-tglb:         NOTRUN -> [SKIP][39] ([fdo#109284] / [fdo#111827]) +6 similar issues
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb7/igt@kms_color_chamelium@pipe-d-ctm-red-to-blue.html
    - shard-iclb:         NOTRUN -> [SKIP][40] ([fdo#109278] / [fdo#109284] / [fdo#111827])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb1/igt@kms_color_chamelium@pipe-d-ctm-red-to-blue.html

  * igt@kms_cursor_crc@pipe-d-cursor-512x512-offscreen:
    - shard-tglb:         NOTRUN -> [SKIP][41] ([fdo#109279])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb2/igt@kms_cursor_crc@pipe-d-cursor-512x512-offscreen.html

  * igt@kms_cursor_edge_walk@pipe-d-128x128-top-edge:
    - shard-iclb:         NOTRUN -> [SKIP][42] ([fdo#109278]) +5 similar issues
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb6/igt@kms_cursor_edge_walk@pipe-d-128x128-top-edge.html

  * igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions:
    - shard-iclb:         NOTRUN -> [SKIP][43] ([fdo#109274] / [fdo#109278])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb8/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions.html

  * igt@kms_flip@2x-blocking-absolute-wf_vblank-interruptible:
    - shard-tglb:         NOTRUN -> [SKIP][44] ([fdo#111825]) +17 similar issues
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb1/igt@kms_flip@2x-blocking-absolute-wf_vblank-interruptible.html

  * igt@kms_flip@2x-modeset-vs-vblank-race-interruptible:
    - shard-iclb:         NOTRUN -> [SKIP][45] ([fdo#109274]) +3 similar issues
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb6/igt@kms_flip@2x-modeset-vs-vblank-race-interruptible.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1:
    - shard-tglb:         [PASS][46] -> [FAIL][47] ([i915#2598])
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-tglb8/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb2/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a2:
    - shard-glk:          [PASS][48] -> [FAIL][49] ([i915#79])
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-glk4/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a2.html
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk3/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a2.html

  * igt@kms_flip@flip-vs-suspend-interruptible@a-dp1:
    - shard-apl:          [PASS][50] -> [DMESG-WARN][51] ([i915#2635]) +1 similar issue
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-apl4/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-apl4/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html

  * igt@kms_flip@flip-vs-suspend-interruptible@a-edp1:
    - shard-tglb:         [PASS][52] -> [DMESG-WARN][53] ([i915#1436] / [i915#1602] / [i915#1887] / [i915#2411]) +1 similar issue
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-tglb2/igt@kms_flip@flip-vs-suspend-interruptible@a-edp1.html
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb1/igt@kms_flip@flip-vs-suspend-interruptible@a-edp1.html

  * igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1:
    - shard-hsw:          [PASS][54] -> [DMESG-WARN][55] ([i915#2637]) +6 similar issues
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-hsw2/igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1.html
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-hsw4/igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1.html
    - shard-glk:          [PASS][56] -> [DMESG-WARN][57] ([i915#2635]) +1 similar issue
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-glk8/igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1.html
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk9/igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1.html

  * igt@kms_flip@flip-vs-suspend-interruptible@b-edp1:
    - shard-tglb:         [PASS][58] -> [DMESG-FAIL][59] ([i915#1982])
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-tglb2/igt@kms_flip@flip-vs-suspend-interruptible@b-edp1.html
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb1/igt@kms_flip@flip-vs-suspend-interruptible@b-edp1.html

  * igt@kms_flip@flip-vs-suspend-interruptible@c-edp1:
    - shard-tglb:         [PASS][60] -> [INCOMPLETE][61] ([i915#1436] / [i915#2295])
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-tglb2/igt@kms_flip@flip-vs-suspend-interruptible@c-edp1.html
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb1/igt@kms_flip@flip-vs-suspend-interruptible@c-edp1.html

  * igt@kms_flip@flip-vs-suspend-interruptible@c-hdmi-a2:
    - shard-glk:          [PASS][62] -> [DMESG-WARN][63] ([i915#1602])
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-glk8/igt@kms_flip@flip-vs-suspend-interruptible@c-hdmi-a2.html
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk9/igt@kms_flip@flip-vs-suspend-interruptible@c-hdmi-a2.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-move:
    - shard-glk:          [PASS][64] -> [FAIL][65] ([i915#49])
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-glk4/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-move.html
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk2/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-move.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-pwrite:
    - shard-iclb:         NOTRUN -> [SKIP][66] ([fdo#109280]) +12 similar issues
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb7/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-pwrite.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-mmap-cpu:
    - shard-kbl:          NOTRUN -> [SKIP][67] ([fdo#109271]) +53 similar issues
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl3/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-mmap-cpu.html

  * igt@kms_frontbuffer_tracking@psr-2p-pri-indfb-multidraw:
    - shard-apl:          NOTRUN -> [SKIP][68] ([fdo#109271]) +54 similar issues
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-apl7/igt@kms_frontbuffer_tracking@psr-2p-pri-indfb-multidraw.html

  * igt@kms_frontbuffer_tracking@psr-rgb565-draw-blt:
    - shard-hsw:          NOTRUN -> [SKIP][69] ([fdo#109271]) +56 similar issues
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-hsw8/igt@kms_frontbuffer_tracking@psr-rgb565-draw-blt.html

  * igt@kms_plane_alpha_blend@pipe-b-constant-alpha-max:
    - shard-glk:          NOTRUN -> [FAIL][70] ([fdo#108145] / [i915#265]) +1 similar issue
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk9/igt@kms_plane_alpha_blend@pipe-b-constant-alpha-max.html
    - shard-apl:          NOTRUN -> [FAIL][71] ([fdo#108145] / [i915#265])
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-apl3/igt@kms_plane_alpha_blend@pipe-b-constant-alpha-max.html
    - shard-kbl:          NOTRUN -> [FAIL][72] ([fdo#108145] / [i915#265])
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl6/igt@kms_plane_alpha_blend@pipe-b-constant-alpha-max.html

  * igt@kms_psr@psr2_no_drrs:
    - shard-iclb:         [PASS][73] -> [SKIP][74] ([fdo#109441]) +2 similar issues
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb2/igt@kms_psr@psr2_no_drrs.html
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb3/igt@kms_psr@psr2_no_drrs.html

  * igt@kms_psr@psr2_primary_mmap_gtt:
    - shard-iclb:         NOTRUN -> [SKIP][75] ([fdo#109441])
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb3/igt@kms_psr@psr2_primary_mmap_gtt.html

  * igt@kms_writeback@writeback-fb-id:
    - shard-glk:          NOTRUN -> [SKIP][76] ([fdo#109271] / [i915#2437])
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk9/igt@kms_writeback@writeback-fb-id.html

  * igt@nouveau_crc@pipe-b-source-outp-complete:
    - shard-iclb:         NOTRUN -> [SKIP][77] ([i915#2530]) +1 similar issue
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb2/igt@nouveau_crc@pipe-b-source-outp-complete.html

  * igt@nouveau_crc@pipe-c-source-outp-complete:
    - shard-tglb:         NOTRUN -> [SKIP][78] ([i915#2530]) +1 similar issue
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb7/igt@nouveau_crc@pipe-c-source-outp-complete.html

  * igt@perf@gen8-unprivileged-single-ctx-counters:
    - shard-tglb:         NOTRUN -> [SKIP][79] ([fdo#109289])
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb7/igt@perf@gen8-unprivileged-single-ctx-counters.html

  * igt@prime_nv_pcopy@test1_micro:
    - shard-tglb:         NOTRUN -> [SKIP][80] ([fdo#109291]) +2 similar issues
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb7/igt@prime_nv_pcopy@test1_micro.html

  * igt@prime_nv_test@i915_nv_sharing:
    - shard-iclb:         NOTRUN -> [SKIP][81] ([fdo#109291]) +2 similar issues
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb5/igt@prime_nv_test@i915_nv_sharing.html

  * igt@prime_vgem@fence-read-hang:
    - shard-tglb:         NOTRUN -> [SKIP][82] ([fdo#109295])
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb3/igt@prime_vgem@fence-read-hang.html
    - shard-iclb:         NOTRUN -> [SKIP][83] ([fdo#109295])
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb4/igt@prime_vgem@fence-read-hang.html

  * igt@tools_test@sysfs_l3_parity:
    - shard-iclb:         NOTRUN -> [SKIP][84] ([fdo#109307])
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb2/igt@tools_test@sysfs_l3_parity.html
    - shard-tglb:         NOTRUN -> [SKIP][85] ([fdo#109307])
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb1/igt@tools_test@sysfs_l3_parity.html

  
#### Possible fixes ####

  * igt@gem_eio@in-flight-contexts-10ms:
    - shard-hsw:          [INCOMPLETE][86] ([i915#1037]) -> [PASS][87]
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-hsw4/igt@gem_eio@in-flight-contexts-10ms.html
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-hsw8/igt@gem_eio@in-flight-contexts-10ms.html

  * {igt@gem_exec_fair@basic-none-solo@rcs0}:
    - shard-apl:          [FAIL][88] ([i915#2842]) -> [PASS][89]
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-apl1/igt@gem_exec_fair@basic-none-solo@rcs0.html
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-apl2/igt@gem_exec_fair@basic-none-solo@rcs0.html

  * {igt@gem_exec_fair@basic-pace@vecs0}:
    - shard-glk:          [FAIL][90] ([i915#2842]) -> [PASS][91] +2 similar issues
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-glk9/igt@gem_exec_fair@basic-pace@vecs0.html
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk7/igt@gem_exec_fair@basic-pace@vecs0.html

  * igt@gem_exec_suspend@basic-s3:
    - shard-iclb:         [DMESG-WARN][92] ([i915#1602]) -> [PASS][93]
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb6/igt@gem_exec_suspend@basic-s3.html
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb8/igt@gem_exec_suspend@basic-s3.html
    - shard-kbl:          [DMESG-WARN][94] ([i915#1602]) -> [PASS][95]
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-kbl3/igt@gem_exec_suspend@basic-s3.html
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl2/igt@gem_exec_suspend@basic-s3.html
    - shard-apl:          [INCOMPLETE][96] ([i915#1602] / [i915#2369] / [i915#2502] / [i915#2635]) -> [PASS][97]
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-apl1/igt@gem_exec_suspend@basic-s3.html
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-apl1/igt@gem_exec_suspend@basic-s3.html

  * igt@gen9_exec_parse@allowed-all:
    - shard-glk:          [DMESG-WARN][98] ([i915#1436] / [i915#716]) -> [PASS][99]
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-glk7/igt@gen9_exec_parse@allowed-all.html
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk2/igt@gen9_exec_parse@allowed-all.html

  * igt@i915_pm_rpm@fences:
    - shard-iclb:         [SKIP][100] ([i915#579]) -> [PASS][101] +1 similar issue
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb6/igt@i915_pm_rpm@fences.html
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb2/igt@i915_pm_rpm@fences.html

  * igt@i915_pm_rpm@gem-evict-pwrite:
    - shard-hsw:          [SKIP][102] ([fdo#109271]) -> [PASS][103] +1 similar issue
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-hsw8/igt@i915_pm_rpm@gem-evict-pwrite.html
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-hsw4/igt@i915_pm_rpm@gem-evict-pwrite.html
    - shard-tglb:         [SKIP][104] ([i915#579]) -> [PASS][105] +1 similar issue
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-tglb1/igt@i915_pm_rpm@gem-evict-pwrite.html
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb8/igt@i915_pm_rpm@gem-evict-pwrite.html
    - shard-kbl:          [SKIP][106] ([fdo#109271]) -> [PASS][107] +1 similar issue
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-kbl3/igt@i915_pm_rpm@gem-evict-pwrite.html
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl6/igt@i915_pm_rpm@gem-evict-pwrite.html
    - shard-apl:          [SKIP][108] ([fdo#109271]) -> [PASS][109] +1 similar issue
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-apl3/igt@i915_pm_rpm@gem-evict-pwrite.html
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-apl3/igt@i915_pm_rpm@gem-evict-pwrite.html

  * igt@kms_async_flips@test-time-stamp:
    - shard-tglb:         [FAIL][110] ([i915#2597]) -> [PASS][111]
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-tglb7/igt@kms_async_flips@test-time-stamp.html
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb7/igt@kms_async_flips@test-time-stamp.html

  * igt@kms_cursor_legacy@cursor-vs-flip-toggle:
    - shard-hsw:          [FAIL][112] ([i915#2370]) -> [PASS][113]
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-hsw1/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-hsw2/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html

  * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
    - shard-hsw:          [DMESG-WARN][114] ([i915#2637]) -> [PASS][115] +1 similar issue
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-hsw8/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-hsw4/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
    - shard-kbl:          [INCOMPLETE][116] ([i915#155]) -> [PASS][117]
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-kbl3/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl3/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
    - shard-tglb:         [DMESG-WARN][118] ([i915#1436] / [i915#1602] / [i915#1887] / [i915#2411]) -> [PASS][119] +1 similar issue
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-tglb1/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb1/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
    - shard-apl:          [DMESG-WARN][120] ([i915#2635]) -> [PASS][121]
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-apl3/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-apl8/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
    - shard-glk:          [DMESG-WARN][122] ([i915#2635]) -> [PASS][123]
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-glk5/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-glk5/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html

  * igt@kms_psr@psr2_primary_mmap_cpu:
    - shard-iclb:         [SKIP][124] ([fdo#109441]) -> [PASS][125] +2 similar issues
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb6/igt@kms_psr@psr2_primary_mmap_cpu.html
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb2/igt@kms_psr@psr2_primary_mmap_cpu.html

  * igt@perf@polling-parameterized:
    - shard-tglb:         [FAIL][126] ([i915#1542]) -> [PASS][127]
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-tglb3/igt@perf@polling-parameterized.html
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-tglb3/igt@perf@polling-parameterized.html

  
#### Warnings ####

  * igt@i915_pm_rc6_residency@rc6-fence:
    - shard-iclb:         [WARN][128] ([i915#1804] / [i915#2684]) -> [WARN][129] ([i915#2681] / [i915#2684])
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb7/igt@i915_pm_rc6_residency@rc6-fence.html
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb1/igt@i915_pm_rc6_residency@rc6-fence.html

  * igt@i915_pm_rc6_residency@rc6-idle:
    - shard-iclb:         [WARN][130] ([i915#1804] / [i915#2684]) -> [WARN][131] ([i915#2684])
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb4/igt@i915_pm_rc6_residency@rc6-idle.html
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb2/igt@i915_pm_rc6_residency@rc6-idle.html

  * igt@runner@aborted:
    - shard-hsw:          ([FAIL][132], [FAIL][133], [FAIL][134]) ([fdo#109271] / [i915#1436] / [i915#2295] / [i915#2722] / [i915#483]) -> ([FAIL][135], [FAIL][136]) ([fdo#109271] / [i915#2295])
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-hsw8/igt@runner@aborted.html
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-hsw1/igt@runner@aborted.html
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-hsw4/igt@runner@aborted.html
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-hsw8/igt@runner@aborted.html
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-hsw4/igt@runner@aborted.html
    - shard-kbl:          ([FAIL][137], [FAIL][138]) ([i915#2295] / [i915#483]) -> ([FAIL][139], [FAIL][140], [FAIL][141], [FAIL][142]) ([fdo#109271] / [i915#1814] / [i915#2295] / [i915#2426] / [i915#2505] / [i915#483])
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-kbl7/igt@runner@aborted.html
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-kbl3/igt@runner@aborted.html
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl7/igt@runner@aborted.html
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl1/igt@runner@aborted.html
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl6/igt@runner@aborted.html
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-kbl4/igt@runner@aborted.html
    - shard-iclb:         ([FAIL][143], [FAIL][144], [FAIL][145]) ([i915#2295] / [i915#2426] / [i915#2724] / [i915#483]) -> ([FAIL][146], [FAIL][147], [FAIL][148], [FAIL][149]) ([i915#1814] / [i915#2295] / [i915#2426] / [i915#2724] / [i915#483])
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb5/igt@runner@aborted.html
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb2/igt@runner@aborted.html
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-iclb6/igt@runner@aborted.html
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb3/igt@runner@aborted.html
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb6/igt@runner@aborted.html
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb2/igt@runner@aborted.html
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5335/shard-iclb5/igt@runner@aborted.html
    - shard-apl:          ([FAIL][150], [FAIL][151], [FAIL][152]) ([fdo#109271] / [i915#1814] / [i915#2295]) -> ([FAIL][153], [FAIL][154], [FAIL][155], [FAIL][156]) ([fdo#109271] / [i915#1610] / [i915#1814] / [i915#2295] / [i915#2426])
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9528/shard-apl3/igt@runner@aborted.html
   [151]: https://intel-gfx-ci.01.org/t

== Logs ==

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

[-- Attachment #1.2: Type: text/html, Size: 33236 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] 14+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 1/4] lib/i915/perf: fix intel_perf_devinfo gen field
  2020-12-28  3:19 [igt-dev] [PATCH i-g-t 1/4] lib/i915/perf: fix intel_perf_devinfo gen field Lionel Landwerlin
                   ` (4 preceding siblings ...)
  2020-12-28  5:09 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
@ 2021-01-07  0:07 ` Umesh Nerlige Ramappa
  5 siblings, 0 replies; 14+ messages in thread
From: Umesh Nerlige Ramappa @ 2021-01-07  0:07 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: igt-dev

On Mon, Dec 28, 2020 at 05:19:37AM +0200, Lionel Landwerlin wrote:
>Inadvertently left this field uninitialized (or rather at the wrong 0
>value).
>
>Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>

Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>

Thanks,
Umesh
>Fixes: 53f8f541caae20 ("lib: Add i915_perf library")
>---
> lib/i915/perf.c | 1 +
> 1 file changed, 1 insertion(+)
>
>diff --git a/lib/i915/perf.c b/lib/i915/perf.c
>index 53c0a9dcc..ef0f0b437 100644
>--- a/lib/i915/perf.c
>+++ b/lib/i915/perf.c
>@@ -168,6 +168,7 @@ intel_perf_for_devinfo(uint32_t device_id,
> 	 * 2x6 does not have 2 samplers).
> 	 */
> 	perf->devinfo.devid = device_id;
>+	perf->devinfo.gen = devinfo->gen;
> 	perf->devinfo.revision = revision;
> 	perf->devinfo.timestamp_frequency = timestamp_frequency;
> 	perf->devinfo.gt_min_freq = gt_min_freq;
>-- 
>2.30.0.rc2
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 2/4] lib/i915/perf: fill up device name
  2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 2/4] lib/i915/perf: fill up device name Lionel Landwerlin
@ 2021-01-07  0:09   ` Umesh Nerlige Ramappa
  0 siblings, 0 replies; 14+ messages in thread
From: Umesh Nerlige Ramappa @ 2021-01-07  0:09 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: igt-dev

On Mon, Dec 28, 2020 at 05:19:38AM +0200, Lionel Landwerlin wrote:
>Forgot to initialize this field.
>
>Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>

Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>

Thanks,
Umesh

>---
> lib/i915/perf.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
>diff --git a/lib/i915/perf.c b/lib/i915/perf.c
>index ef0f0b437..f30833787 100644
>--- a/lib/i915/perf.c
>+++ b/lib/i915/perf.c
>@@ -174,6 +174,11 @@ intel_perf_for_devinfo(uint32_t device_id,
> 	perf->devinfo.gt_min_freq = gt_min_freq;
> 	perf->devinfo.gt_max_freq = gt_max_freq;
>
>+	if (devinfo->codename) {
>+		snprintf(perf->devinfo.devname, sizeof(perf->devinfo.devname),
>+			 "%s", devinfo->codename);
>+	}
>+
> 	/* On Gen11+ the equations from the xml files expect an 8bits
> 	 * mask per subslice, versus only 3bits on prior Gens.
> 	 */
>-- 
>2.30.0.rc2
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 3/4] lib/i915/perf: fill up reader devinfo default field
  2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 3/4] lib/i915/perf: fill up reader devinfo default field Lionel Landwerlin
@ 2021-01-07  0:23   ` Umesh Nerlige Ramappa
  2021-01-07 10:03     ` Lionel Landwerlin
  0 siblings, 1 reply; 14+ messages in thread
From: Umesh Nerlige Ramappa @ 2021-01-07  0:23 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: igt-dev

On Mon, Dec 28, 2020 at 05:19:39AM +0200, Lionel Landwerlin wrote:
>A bunch of fields were left to 0...
>
>Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>


What is different between the devinfo in intel_perf vs the devinfo in 
intel_perf_data_reader. Since you already have a intel_perf object 
inside intel_perf_data_reader, wondering why you need to copy it over 
and then set the devid and timestamp_frequency. Why not just set it in 
reader->perf->devinfo.

Irrespective,

Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>

Thanks,
Umesh

>Fixes: 43116ee368585d ("lib/i915-perf: add i915 perf data reader")
>---
> lib/i915/perf_data_reader.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
>diff --git a/lib/i915/perf_data_reader.c b/lib/i915/perf_data_reader.c
>index 3b05a2e54..4b68fb502 100644
>--- a/lib/i915/perf_data_reader.c
>+++ b/lib/i915/perf_data_reader.c
>@@ -119,12 +119,13 @@ find_metric_set(struct intel_perf *perf, const char *symbol_name)
>
> static void
> init_devinfo(struct intel_perf_devinfo *perf_devinfo,
>+	     struct intel_perf *perf,
> 	     const struct intel_device_info *devinfo,
> 	     uint32_t devid,
> 	     uint64_t timestamp_frequency)
> {
>+	*perf_devinfo = perf->devinfo;
> 	perf_devinfo->devid = devid;
>-	perf_devinfo->gen = devinfo->gen;
> 	perf_devinfo->timestamp_frequency = timestamp_frequency;
> }
>
>@@ -203,15 +204,15 @@ parse_data(struct intel_perf_data_reader *reader)
> 		return false;
> 	}
>
>-	init_devinfo(&reader->devinfo, devinfo,
>-		     record_info->device_id,
>-		     record_info->timestamp_frequency);
> 	reader->perf = intel_perf_for_devinfo(record_info->device_id,
> 					      record_info->device_revision,
> 					      record_info->timestamp_frequency,
> 					      record_info->gt_min_frequency,
> 					      record_info->gt_max_frequency,
> 					      &record_topology->topology);
>+	init_devinfo(&reader->devinfo, reader->perf, devinfo,
>+		     record_info->device_id,
>+		     record_info->timestamp_frequency);
>
> 	reader->metric_set_name = record_info->metric_set_name;
> 	reader->metric_set_uuid = record_info->metric_set_uuid;
>-- 
>2.30.0.rc2
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 4/4] lib/i915/perf: don't forget last timeline element
  2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 4/4] lib/i915/perf: don't forget last timeline element Lionel Landwerlin
@ 2021-01-07  1:07   ` Umesh Nerlige Ramappa
  2021-01-07 10:12     ` Lionel Landwerlin
  0 siblings, 1 reply; 14+ messages in thread
From: Umesh Nerlige Ramappa @ 2021-01-07  1:07 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: igt-dev

On Mon, Dec 28, 2020 at 05:19:40AM +0200, Lionel Landwerlin wrote:
>We're currently dropping the last element of the timeline.

Inside the for-loop we append timeline events on context switches 
indicating what context ran and for how long, but that's not the case 
for the append_timeline_event outside the for-loop.

Does the one outside indicate how long last_ctx_id ran before capture 
ended (or we ran out of records)? Is it possible for the user to 
distinguish the two? Just thinking out loud.

Otherwise:

Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>

Thanks,
Umesh
>
>Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
>Fixes: 43116ee368585d ("lib/i915-perf: add i915 perf data reader")
>---
> lib/i915/perf_data_reader.c | 27 ++++++++++++++++++---------
> 1 file changed, 18 insertions(+), 9 deletions(-)
>
>diff --git a/lib/i915/perf_data_reader.c b/lib/i915/perf_data_reader.c
>index 4b68fb502..065fe6066 100644
>--- a/lib/i915/perf_data_reader.c
>+++ b/lib/i915/perf_data_reader.c
>@@ -298,17 +298,23 @@ static void
> generate_cpu_events(struct intel_perf_data_reader *reader)
> {
> 	uint32_t last_header_idx = 0;
>-	const struct drm_i915_perf_record_header *last_header = reader->records[0];
>+	const struct drm_i915_perf_record_header *last_header = reader->records[0],
>+		*current_header = reader->records[0];
>+	const uint8_t *start_report, *end_report;
>+	uint32_t last_ctx_id, current_ctx_id;
>+	uint64_t gpu_ts_start, gpu_ts_end;
>
> 	for (uint32_t i = 1; i < reader->n_records; i++) {
>-		const struct drm_i915_perf_record_header *current_header =
>-			reader->records[i];
>-		const uint8_t *start_report = (const uint8_t *) (last_header + 1),
>-			*end_report = (const uint8_t *) (current_header + 1);
>-		uint32_t last_ctx_id = oa_report_ctx_id(&reader->devinfo, start_report),
>-			current_ctx_id = oa_report_ctx_id(&reader->devinfo, end_report);
>-		uint64_t gpu_ts_start = oa_report_timestamp(start_report),
>-			gpu_ts_end = oa_report_timestamp(end_report);
>+		current_header = reader->records[i];
>+
>+		start_report = (const uint8_t *) (last_header + 1);
>+		end_report = (const uint8_t *) (current_header + 1);
>+
>+		last_ctx_id = oa_report_ctx_id(&reader->devinfo, start_report);
>+		current_ctx_id = oa_report_ctx_id(&reader->devinfo, end_report);
>+
>+		gpu_ts_start = oa_report_timestamp(start_report);
>+		gpu_ts_end = oa_report_timestamp(end_report);
>
> 		if (last_ctx_id == current_ctx_id)
> 			continue;
>@@ -318,6 +324,9 @@ generate_cpu_events(struct intel_perf_data_reader *reader)
> 		last_header = current_header;
> 		last_header_idx = i;
> 	}
>+
>+	if (last_header != current_header)
>+		append_timeline_event(reader, gpu_ts_start, gpu_ts_end, last_header_idx, reader->n_records - 1, last_ctx_id);
> }
>
> static void
>-- 
>2.30.0.rc2
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 3/4] lib/i915/perf: fill up reader devinfo default field
  2021-01-07  0:23   ` Umesh Nerlige Ramappa
@ 2021-01-07 10:03     ` Lionel Landwerlin
  2021-01-07 21:49       ` Umesh Nerlige Ramappa
  0 siblings, 1 reply; 14+ messages in thread
From: Lionel Landwerlin @ 2021-01-07 10:03 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

On 07/01/2021 02:23, Umesh Nerlige Ramappa wrote:
> On Mon, Dec 28, 2020 at 05:19:39AM +0200, Lionel Landwerlin wrote:
>> A bunch of fields were left to 0...
>>
>> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
>
>
> What is different between the devinfo in intel_perf vs the devinfo in 
> intel_perf_data_reader. Since you already have a intel_perf object 
> inside intel_perf_data_reader, wondering why you need to copy it over 
> and then set the devid and timestamp_frequency. Why not just set it in 
> reader->perf->devinfo.
>
> Irrespective,
>
> Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
>
> Thanks,
> Umesh


I don't remember my exact reasoning for having this twice....

As far as I can tell they're exactly the same, I could just copy it 
straight.


Would that be okay as a replacement for this commit?


-Lionel


>
>> Fixes: 43116ee368585d ("lib/i915-perf: add i915 perf data reader")
>> ---
>> lib/i915/perf_data_reader.c | 9 +++++----
>> 1 file changed, 5 insertions(+), 4 deletions(-)
>>
>> diff --git a/lib/i915/perf_data_reader.c b/lib/i915/perf_data_reader.c
>> index 3b05a2e54..4b68fb502 100644
>> --- a/lib/i915/perf_data_reader.c
>> +++ b/lib/i915/perf_data_reader.c
>> @@ -119,12 +119,13 @@ find_metric_set(struct intel_perf *perf, const 
>> char *symbol_name)
>>
>> static void
>> init_devinfo(struct intel_perf_devinfo *perf_devinfo,
>> +         struct intel_perf *perf,
>>          const struct intel_device_info *devinfo,
>>          uint32_t devid,
>>          uint64_t timestamp_frequency)
>> {
>> +    *perf_devinfo = perf->devinfo;
>>     perf_devinfo->devid = devid;
>> -    perf_devinfo->gen = devinfo->gen;
>>     perf_devinfo->timestamp_frequency = timestamp_frequency;
>> }
>>
>> @@ -203,15 +204,15 @@ parse_data(struct intel_perf_data_reader *reader)
>>         return false;
>>     }
>>
>> -    init_devinfo(&reader->devinfo, devinfo,
>> -             record_info->device_id,
>> -             record_info->timestamp_frequency);
>>     reader->perf = intel_perf_for_devinfo(record_info->device_id,
>>                           record_info->device_revision,
>>                           record_info->timestamp_frequency,
>>                           record_info->gt_min_frequency,
>>                           record_info->gt_max_frequency,
>>                           &record_topology->topology);
>> +    init_devinfo(&reader->devinfo, reader->perf, devinfo,
>> +             record_info->device_id,
>> +             record_info->timestamp_frequency);
>>
>>     reader->metric_set_name = record_info->metric_set_name;
>>     reader->metric_set_uuid = record_info->metric_set_uuid;
>> -- 
>> 2.30.0.rc2
>>

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

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

* Re: [igt-dev] [PATCH i-g-t 4/4] lib/i915/perf: don't forget last timeline element
  2021-01-07  1:07   ` Umesh Nerlige Ramappa
@ 2021-01-07 10:12     ` Lionel Landwerlin
  2021-01-07 21:44       ` Umesh Nerlige Ramappa
  0 siblings, 1 reply; 14+ messages in thread
From: Lionel Landwerlin @ 2021-01-07 10:12 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

On 07/01/2021 03:07, Umesh Nerlige Ramappa wrote:
> On Mon, Dec 28, 2020 at 05:19:40AM +0200, Lionel Landwerlin wrote:
>> We're currently dropping the last element of the timeline.
>
> Inside the for-loop we append timeline events on context switches 
> indicating what context ran and for how long, but that's not the case 
> for the append_timeline_event outside the for-loop.
>
> Does the one outside indicate how long last_ctx_id ran before capture 
> ended (or we ran out of records)? Is it possible for the user to 
> distinguish the two? Just thinking out loud.


Let's say you have the following reports


report0 ctx=1

report1 ctx=2

report2 ctx=1


That generates 2 timeline events (report1 - report0 for ctx1), (report2 
- report1 for ctx2).

Those 2 are generated within the for loop because it notices a change in 
ctx value twice.


Now this :


report0 ctx=1

report1 ctx=2

report2 ctx=1

report3 ctx=1


This also generates 2 timeline events within the for loop.

But because the last report3 has the same ctx as report2, there is no 
additional timeline event generated for ctx1 within the for loop.

And we just quit the loop because we ran out of reports.

So we need to add one more item.


The gpu_ts_start & gpu_ts_end being generated before the continue; in 
the for loop, make the last append_timeline_event() add the right 
timestamps after the for loop for that last timeline.


-Lionel


>
> Otherwise:
>
> Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
>
> Thanks,
> Umesh
>>
>> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
>> Fixes: 43116ee368585d ("lib/i915-perf: add i915 perf data reader")
>> ---
>> lib/i915/perf_data_reader.c | 27 ++++++++++++++++++---------
>> 1 file changed, 18 insertions(+), 9 deletions(-)
>>
>> diff --git a/lib/i915/perf_data_reader.c b/lib/i915/perf_data_reader.c
>> index 4b68fb502..065fe6066 100644
>> --- a/lib/i915/perf_data_reader.c
>> +++ b/lib/i915/perf_data_reader.c
>> @@ -298,17 +298,23 @@ static void
>> generate_cpu_events(struct intel_perf_data_reader *reader)
>> {
>>     uint32_t last_header_idx = 0;
>> -    const struct drm_i915_perf_record_header *last_header = 
>> reader->records[0];
>> +    const struct drm_i915_perf_record_header *last_header = 
>> reader->records[0],
>> +        *current_header = reader->records[0];
>> +    const uint8_t *start_report, *end_report;
>> +    uint32_t last_ctx_id, current_ctx_id;
>> +    uint64_t gpu_ts_start, gpu_ts_end;
>>
>>     for (uint32_t i = 1; i < reader->n_records; i++) {
>> -        const struct drm_i915_perf_record_header *current_header =
>> -            reader->records[i];
>> -        const uint8_t *start_report = (const uint8_t *) (last_header 
>> + 1),
>> -            *end_report = (const uint8_t *) (current_header + 1);
>> -        uint32_t last_ctx_id = oa_report_ctx_id(&reader->devinfo, 
>> start_report),
>> -            current_ctx_id = oa_report_ctx_id(&reader->devinfo, 
>> end_report);
>> -        uint64_t gpu_ts_start = oa_report_timestamp(start_report),
>> -            gpu_ts_end = oa_report_timestamp(end_report);
>> +        current_header = reader->records[i];
>> +
>> +        start_report = (const uint8_t *) (last_header + 1);
>> +        end_report = (const uint8_t *) (current_header + 1);
>> +
>> +        last_ctx_id = oa_report_ctx_id(&reader->devinfo, start_report);
>> +        current_ctx_id = oa_report_ctx_id(&reader->devinfo, 
>> end_report);
>> +
>> +        gpu_ts_start = oa_report_timestamp(start_report);
>> +        gpu_ts_end = oa_report_timestamp(end_report);
>>
>>         if (last_ctx_id == current_ctx_id)
>>             continue;
>> @@ -318,6 +324,9 @@ generate_cpu_events(struct intel_perf_data_reader 
>> *reader)
>>         last_header = current_header;
>>         last_header_idx = i;
>>     }
>> +
>> +    if (last_header != current_header)
>> +        append_timeline_event(reader, gpu_ts_start, gpu_ts_end, 
>> last_header_idx, reader->n_records - 1, last_ctx_id);
>> }
>>
>> static void
>> -- 
>> 2.30.0.rc2
>>

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

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

* Re: [igt-dev] [PATCH i-g-t 4/4] lib/i915/perf: don't forget last timeline element
  2021-01-07 10:12     ` Lionel Landwerlin
@ 2021-01-07 21:44       ` Umesh Nerlige Ramappa
  0 siblings, 0 replies; 14+ messages in thread
From: Umesh Nerlige Ramappa @ 2021-01-07 21:44 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: igt-dev

On Thu, Jan 07, 2021 at 12:12:27PM +0200, Lionel Landwerlin wrote:
>On 07/01/2021 03:07, Umesh Nerlige Ramappa wrote:
>>On Mon, Dec 28, 2020 at 05:19:40AM +0200, Lionel Landwerlin wrote:
>>>We're currently dropping the last element of the timeline.
>>
>>Inside the for-loop we append timeline events on context switches 
>>indicating what context ran and for how long, but that's not the 
>>case for the append_timeline_event outside the for-loop.
>>
>>Does the one outside indicate how long last_ctx_id ran before 
>>capture ended (or we ran out of records)? Is it possible for the 
>>user to distinguish the two? Just thinking out loud.
>
>
>Let's say you have the following reports
>
>
>report0 ctx=1
>
>report1 ctx=2
>
>report2 ctx=1
>
>
>That generates 2 timeline events (report1 - report0 for ctx1), 
>(report2 - report1 for ctx2).
>
>Those 2 are generated within the for loop because it notices a change 
>in ctx value twice.
>
>
>Now this :
>
>
>report0 ctx=1
>
>report1 ctx=2
>
>report2 ctx=1
>
>report3 ctx=1
>
>
>This also generates 2 timeline events within the for loop.
>
>But because the last report3 has the same ctx as report2, there is no 
>additional timeline event generated for ctx1 within the for loop.
>
>And we just quit the loop because we ran out of reports.
>
>So we need to add one more item.
>
>
>The gpu_ts_start & gpu_ts_end being generated before the continue; in 
>the for loop, make the last append_timeline_event() add the right 
>timestamps after the for loop for that last timeline.

Makes sense, thanks.
Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>

-Umesh
>
>
>-Lionel
>
>
>>
>>Otherwise:
>>
>>Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
>>
>>Thanks,
>>Umesh
>>>
>>>Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
>>>Fixes: 43116ee368585d ("lib/i915-perf: add i915 perf data reader")
>>>---
>>>lib/i915/perf_data_reader.c | 27 ++++++++++++++++++---------
>>>1 file changed, 18 insertions(+), 9 deletions(-)
>>>
>>>diff --git a/lib/i915/perf_data_reader.c b/lib/i915/perf_data_reader.c
>>>index 4b68fb502..065fe6066 100644
>>>--- a/lib/i915/perf_data_reader.c
>>>+++ b/lib/i915/perf_data_reader.c
>>>@@ -298,17 +298,23 @@ static void
>>>generate_cpu_events(struct intel_perf_data_reader *reader)
>>>{
>>>    uint32_t last_header_idx = 0;
>>>-    const struct drm_i915_perf_record_header *last_header = 
>>>reader->records[0];
>>>+    const struct drm_i915_perf_record_header *last_header = 
>>>reader->records[0],
>>>+        *current_header = reader->records[0];
>>>+    const uint8_t *start_report, *end_report;
>>>+    uint32_t last_ctx_id, current_ctx_id;
>>>+    uint64_t gpu_ts_start, gpu_ts_end;
>>>
>>>    for (uint32_t i = 1; i < reader->n_records; i++) {
>>>-        const struct drm_i915_perf_record_header *current_header =
>>>-            reader->records[i];
>>>-        const uint8_t *start_report = (const uint8_t *) 
>>>(last_header + 1),
>>>-            *end_report = (const uint8_t *) (current_header + 1);
>>>-        uint32_t last_ctx_id = oa_report_ctx_id(&reader->devinfo, 
>>>start_report),
>>>-            current_ctx_id = oa_report_ctx_id(&reader->devinfo, 
>>>end_report);
>>>-        uint64_t gpu_ts_start = oa_report_timestamp(start_report),
>>>-            gpu_ts_end = oa_report_timestamp(end_report);
>>>+        current_header = reader->records[i];
>>>+
>>>+        start_report = (const uint8_t *) (last_header + 1);
>>>+        end_report = (const uint8_t *) (current_header + 1);
>>>+
>>>+        last_ctx_id = oa_report_ctx_id(&reader->devinfo, start_report);
>>>+        current_ctx_id = oa_report_ctx_id(&reader->devinfo, 
>>>end_report);
>>>+
>>>+        gpu_ts_start = oa_report_timestamp(start_report);
>>>+        gpu_ts_end = oa_report_timestamp(end_report);
>>>
>>>        if (last_ctx_id == current_ctx_id)
>>>            continue;
>>>@@ -318,6 +324,9 @@ generate_cpu_events(struct 
>>>intel_perf_data_reader *reader)
>>>        last_header = current_header;
>>>        last_header_idx = i;
>>>    }
>>>+
>>>+    if (last_header != current_header)
>>>+        append_timeline_event(reader, gpu_ts_start, gpu_ts_end, 
>>>last_header_idx, reader->n_records - 1, last_ctx_id);
>>>}
>>>
>>>static void
>>>-- 
>>>2.30.0.rc2
>>>
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 3/4] lib/i915/perf: fill up reader devinfo default field
  2021-01-07 10:03     ` Lionel Landwerlin
@ 2021-01-07 21:49       ` Umesh Nerlige Ramappa
  0 siblings, 0 replies; 14+ messages in thread
From: Umesh Nerlige Ramappa @ 2021-01-07 21:49 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: igt-dev

On Thu, Jan 07, 2021 at 12:03:56PM +0200, Lionel Landwerlin wrote:
>On 07/01/2021 02:23, Umesh Nerlige Ramappa wrote:
>>On Mon, Dec 28, 2020 at 05:19:39AM +0200, Lionel Landwerlin wrote:
>>>A bunch of fields were left to 0...
>>>
>>>Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
>>
>>
>>What is different between the devinfo in intel_perf vs the devinfo 
>>in intel_perf_data_reader. Since you already have a intel_perf 
>>object inside intel_perf_data_reader, wondering why you need to copy 
>>it over and then set the devid and timestamp_frequency. Why not just 
>>set it in reader->perf->devinfo.
>>
>>Irrespective,
>>
>>Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
>>
>>Thanks,
>>Umesh
>
>
>I don't remember my exact reasoning for having this twice....
>
>As far as I can tell they're exactly the same, I could just copy it 
>straight.
>
>
>Would that be okay as a replacement for this commit?
>

Yes, that helps since copying it just implies there is not difference 
between the two.

Thanks,
Umesh
>
>-Lionel
>
>
>>
>>>Fixes: 43116ee368585d ("lib/i915-perf: add i915 perf data reader")
>>>---
>>>lib/i915/perf_data_reader.c | 9 +++++----
>>>1 file changed, 5 insertions(+), 4 deletions(-)
>>>
>>>diff --git a/lib/i915/perf_data_reader.c b/lib/i915/perf_data_reader.c
>>>index 3b05a2e54..4b68fb502 100644
>>>--- a/lib/i915/perf_data_reader.c
>>>+++ b/lib/i915/perf_data_reader.c
>>>@@ -119,12 +119,13 @@ find_metric_set(struct intel_perf *perf, 
>>>const char *symbol_name)
>>>
>>>static void
>>>init_devinfo(struct intel_perf_devinfo *perf_devinfo,
>>>+         struct intel_perf *perf,
>>>         const struct intel_device_info *devinfo,
>>>         uint32_t devid,
>>>         uint64_t timestamp_frequency)
>>>{
>>>+    *perf_devinfo = perf->devinfo;
>>>    perf_devinfo->devid = devid;
>>>-    perf_devinfo->gen = devinfo->gen;
>>>    perf_devinfo->timestamp_frequency = timestamp_frequency;
>>>}
>>>
>>>@@ -203,15 +204,15 @@ parse_data(struct intel_perf_data_reader *reader)
>>>        return false;
>>>    }
>>>
>>>-    init_devinfo(&reader->devinfo, devinfo,
>>>-             record_info->device_id,
>>>-             record_info->timestamp_frequency);
>>>    reader->perf = intel_perf_for_devinfo(record_info->device_id,
>>>                          record_info->device_revision,
>>>                          record_info->timestamp_frequency,
>>>                          record_info->gt_min_frequency,
>>>                          record_info->gt_max_frequency,
>>>                          &record_topology->topology);
>>>+    init_devinfo(&reader->devinfo, reader->perf, devinfo,
>>>+             record_info->device_id,
>>>+             record_info->timestamp_frequency);
>>>
>>>    reader->metric_set_name = record_info->metric_set_name;
>>>    reader->metric_set_uuid = record_info->metric_set_uuid;
>>>-- 
>>>2.30.0.rc2
>>>
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

end of thread, other threads:[~2021-01-07 21:49 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-28  3:19 [igt-dev] [PATCH i-g-t 1/4] lib/i915/perf: fix intel_perf_devinfo gen field Lionel Landwerlin
2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 2/4] lib/i915/perf: fill up device name Lionel Landwerlin
2021-01-07  0:09   ` Umesh Nerlige Ramappa
2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 3/4] lib/i915/perf: fill up reader devinfo default field Lionel Landwerlin
2021-01-07  0:23   ` Umesh Nerlige Ramappa
2021-01-07 10:03     ` Lionel Landwerlin
2021-01-07 21:49       ` Umesh Nerlige Ramappa
2020-12-28  3:19 ` [igt-dev] [PATCH i-g-t 4/4] lib/i915/perf: don't forget last timeline element Lionel Landwerlin
2021-01-07  1:07   ` Umesh Nerlige Ramappa
2021-01-07 10:12     ` Lionel Landwerlin
2021-01-07 21:44       ` Umesh Nerlige Ramappa
2020-12-28  3:53 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/4] lib/i915/perf: fix intel_perf_devinfo gen field Patchwork
2020-12-28  5:09 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2021-01-07  0:07 ` [igt-dev] [PATCH i-g-t 1/4] " Umesh Nerlige Ramappa

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.