public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t] lib/crc: Reset fifo underrun reporting for every crc capture
@ 2019-02-19  9:11 Daniel Vetter
  2019-02-19  9:54 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Daniel Vetter @ 2019-02-19  9:11 UTC (permalink / raw)
  To: IGT development; +Cc: Daniel Vetter

We have tons of issues with crc mismatches, but often by that time
there was already a fifo underrun, which disables further fifo
underrun reporting. Reset fifo underrun reporting before we capture a
crc so that it's easier to figure out why the crc mismatch happened.

Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
---
 lib/igt_debugfs.c | 21 +++++++++++++++++++++
 lib/igt_debugfs.h |  2 ++
 lib/igt_kms.c     |  8 ++------
 3 files changed, 25 insertions(+), 6 deletions(-)

diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c
index 6cfaa97579e7..640c78e972e9 100644
--- a/lib/igt_debugfs.c
+++ b/lib/igt_debugfs.c
@@ -808,6 +808,8 @@ void igt_pipe_crc_start(igt_pipe_crc_t *pipe_crc)
 	/* Stop first just to make sure we don't have lingering state left. */
 	igt_pipe_crc_stop(pipe_crc);
 
+	igt_reset_fifo_underrun_reporting(pipe_crc->fd);
+
 	igt_assert_eq(write(pipe_crc->ctl_fd, src, strlen(src)), strlen(src));
 
 	sprintf(buf, "crtc-%d/crc/data", pipe_crc->pipe);
@@ -1002,6 +1004,25 @@ void igt_pipe_crc_collect_crc(igt_pipe_crc_t *pipe_crc, igt_crc_t *out_crc)
 	igt_pipe_crc_stop(pipe_crc);
 }
 
+/**
+ * igt_reset_fifo_underrun_reporting:
+ * @drm_fd: drm device file descriptor
+ *
+ * Resets fifo underrun reporting, if supported by the device. Useful since fifo
+ * underrun reporting tends to be one-shot, so good to reset it before the
+ * actual functional test again in case there's been a separate issue happening
+ * while preparing the test setup.
+ */
+void igt_reset_fifo_underrun_reporting(int drm_fd)
+{
+	int fd = igt_debugfs_open(drm_fd, "i915_fifo_underrun_reset", O_WRONLY);
+	if (fd >= 0) {
+		igt_assert_eq(write(fd, "y", 1), 1);
+
+		close(fd);
+	}
+}
+
 /*
  * Drop caches
  */
diff --git a/lib/igt_debugfs.h b/lib/igt_debugfs.h
index 1233cd8f7a07..b9cf0f813773 100644
--- a/lib/igt_debugfs.h
+++ b/lib/igt_debugfs.h
@@ -216,6 +216,8 @@ void igt_require_hpd_storm_ctl(int fd);
 		  DROP_FREED | \
 		  DROP_IDLE)
 
+void igt_reset_fifo_underrun_reporting(int drm_fd);
+
 bool igt_drop_caches_has(int fd, uint64_t val);
 void igt_drop_caches_set(int fd, uint64_t val);
 
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 85a911e11060..080f90ae6e8c 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -3269,14 +3269,10 @@ display_commit_changed(igt_display_t *display, enum igt_commit_style s)
 	}
 
 	if (display->first_commit) {
-		int fd = igt_debugfs_open(display->drm_fd, "i915_fifo_underrun_reset", O_WRONLY);
-		if (fd >= 0) {
-			igt_assert_eq(write(fd, "y", 1), 1);
-
-			close(fd);
-		}
+		igt_reset_fifo_underrun_reporting(display->drm_fd);
 
 		igt_display_drop_events(display);
+
 		display->first_commit = false;
 	}
 }
-- 
2.20.1

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

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

* [igt-dev] ✓ Fi.CI.BAT: success for lib/crc: Reset fifo underrun reporting for every crc capture
  2019-02-19  9:11 [igt-dev] [PATCH i-g-t] lib/crc: Reset fifo underrun reporting for every crc capture Daniel Vetter
@ 2019-02-19  9:54 ` Patchwork
  2019-02-19 11:36 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  2019-02-20 12:55 ` [igt-dev] [PATCH i-g-t] " Daniel Vetter
  2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2019-02-19  9:54 UTC (permalink / raw)
  To: igt-dev

== Series Details ==

Series: lib/crc: Reset fifo underrun reporting for every crc capture
URL   : https://patchwork.freedesktop.org/series/56883/
State : success

== Summary ==

CI Bug Log - changes from IGT_4837 -> IGTPW_2441
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/56883/revisions/1/mbox/

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_selftest@live_execlists:
    - fi-apl-guc:         PASS -> INCOMPLETE [fdo#103927]

  * igt@kms_pipe_crc_basic@nonblocking-crc-pipe-a-frame-sequence:
    - fi-byt-clapper:     PASS -> FAIL [fdo#103191] / [fdo#107362]

  
#### Possible fixes ####

  * igt@i915_selftest@live_evict:
    - fi-bsw-kefka:       DMESG-WARN [fdo#107709] -> PASS

  * igt@i915_selftest@live_execlists:
    - {fi-icl-y}:         INCOMPLETE [fdo#109567] -> PASS

  * igt@kms_chamelium@hdmi-hpd-fast:
    - fi-kbl-7500u:       FAIL [fdo#109485] -> PASS

  * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
    - fi-byt-clapper:     FAIL [fdo#103191] / [fdo#107362] -> PASS +1

  * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
    - fi-blb-e6850:       INCOMPLETE [fdo#107718] -> PASS

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

  [fdo#103191]: https://bugs.freedesktop.org/show_bug.cgi?id=103191
  [fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
  [fdo#107362]: https://bugs.freedesktop.org/show_bug.cgi?id=107362
  [fdo#107709]: https://bugs.freedesktop.org/show_bug.cgi?id=107709
  [fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
  [fdo#108622]: https://bugs.freedesktop.org/show_bug.cgi?id=108622
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109485]: https://bugs.freedesktop.org/show_bug.cgi?id=109485
  [fdo#109567]: https://bugs.freedesktop.org/show_bug.cgi?id=109567


Participating hosts (43 -> 41)
------------------------------

  Additional (2): fi-kbl-7560u fi-snb-2600 
  Missing    (4): fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-cfl-guc 


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

    * IGT: IGT_4837 -> IGTPW_2441

  CI_DRM_5629: e5bd5364ce58650dc664ee250629aa902dfe64ac @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_2441: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2441/
  IGT_4837: 368e76156f752e6ed6ac32ed9f400567aef7d3fc @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

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

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

* [igt-dev] ✓ Fi.CI.IGT: success for lib/crc: Reset fifo underrun reporting for every crc capture
  2019-02-19  9:11 [igt-dev] [PATCH i-g-t] lib/crc: Reset fifo underrun reporting for every crc capture Daniel Vetter
  2019-02-19  9:54 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
@ 2019-02-19 11:36 ` Patchwork
  2019-02-20 12:55 ` [igt-dev] [PATCH i-g-t] " Daniel Vetter
  2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2019-02-19 11:36 UTC (permalink / raw)
  To: igt-dev

== Series Details ==

Series: lib/crc: Reset fifo underrun reporting for every crc capture
URL   : https://patchwork.freedesktop.org/series/56883/
State : success

== Summary ==

CI Bug Log - changes from IGT_4837_full -> IGTPW_2441_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/56883/revisions/1/mbox/

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_ctx_param@invalid-param-get:
    - shard-snb:          NOTRUN -> FAIL [fdo#109559]

  * igt@kms_busy@extended-modeset-hang-newfb-render-b:
    - shard-glk:          NOTRUN -> DMESG-WARN [fdo#107956]

  * igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-a:
    - shard-snb:          NOTRUN -> DMESG-WARN [fdo#107956]

  * igt@kms_color@pipe-a-degamma:
    - shard-kbl:          PASS -> FAIL [fdo#104782] / [fdo#108145]

  * igt@kms_color@pipe-b-ctm-blue-to-red:
    - shard-apl:          PASS -> DMESG-WARN [fdo#103558] / [fdo#105602] +11

  * igt@kms_cursor_crc@cursor-64x21-random:
    - shard-apl:          PASS -> FAIL [fdo#103232] +4
    - shard-kbl:          PASS -> FAIL [fdo#103232]

  * igt@kms_cursor_crc@cursor-64x64-suspend:
    - shard-apl:          PASS -> FAIL [fdo#103191] / [fdo#103232]
    - shard-kbl:          PASS -> FAIL [fdo#103191] / [fdo#103232]

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-render:
    - shard-apl:          PASS -> FAIL [fdo#103167] +4

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-fullscreen:
    - shard-kbl:          PASS -> FAIL [fdo#103167]

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-cpu:
    - shard-glk:          PASS -> FAIL [fdo#103167] +3

  * igt@kms_plane@pixel-format-pipe-c-planes:
    - shard-apl:          PASS -> FAIL [fdo#103166] +1

  * igt@kms_plane@plane-position-covered-pipe-a-planes:
    - shard-kbl:          PASS -> FAIL [fdo#103166]

  * igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb:
    - shard-glk:          PASS -> FAIL [fdo#108145]

  * igt@kms_plane_alpha_blend@pipe-c-alpha-basic:
    - shard-glk:          NOTRUN -> FAIL [fdo#108145]

  * igt@kms_plane_multiple@atomic-pipe-b-tiling-none:
    - shard-glk:          PASS -> FAIL [fdo#103166]

  * igt@kms_rotation_crc@multiplane-rotation-cropping-bottom:
    - shard-kbl:          PASS -> DMESG-FAIL [fdo#105763]

  * igt@kms_vblank@pipe-b-ts-continuation-modeset:
    - shard-kbl:          PASS -> FAIL [fdo#104894]
    - shard-apl:          PASS -> DMESG-FAIL [fdo#103558] / [fdo#105602]

  
#### Possible fixes ####

  * igt@kms_ccs@pipe-a-crc-sprite-planes-basic:
    - shard-apl:          FAIL [fdo#106510] / [fdo#108145] -> PASS +1

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic:
    - shard-glk:          FAIL [fdo#108145] -> PASS
    - shard-kbl:          FAIL [fdo#107725] / [fdo#108145] -> PASS

  * igt@kms_cursor_crc@cursor-128x42-onscreen:
    - shard-apl:          FAIL [fdo#103232] -> PASS +3

  * igt@kms_cursor_crc@cursor-256x256-suspend:
    - shard-apl:          FAIL [fdo#103191] / [fdo#103232] -> PASS

  * igt@kms_flip@flip-vs-dpms-interruptible:
    - shard-hsw:          INCOMPLETE [fdo#103540] -> PASS

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
    - shard-apl:          FAIL [fdo#103167] -> PASS +2

  * igt@kms_frontbuffer_tracking@fbc-1p-rte:
    - shard-glk:          FAIL [fdo#103167] / [fdo#105682] -> PASS

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff:
    - shard-glk:          FAIL [fdo#103167] -> PASS +9

  * igt@kms_plane@pixel-format-pipe-a-planes:
    - shard-apl:          FAIL [fdo#103166] -> PASS +1

  * igt@kms_plane@pixel-format-pipe-c-planes-source-clamping:
    - shard-apl:          FAIL [fdo#108948] -> PASS

  * igt@kms_plane_multiple@atomic-pipe-c-tiling-x:
    - shard-glk:          FAIL [fdo#103166] -> PASS +5

  * igt@pm_rc6_residency@rc6-accuracy:
    - shard-snb:          {SKIP} [fdo#109271] -> PASS

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

  [fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166
  [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
  [fdo#103191]: https://bugs.freedesktop.org/show_bug.cgi?id=103191
  [fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
  [fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
  [fdo#103558]: https://bugs.freedesktop.org/show_bug.cgi?id=103558
  [fdo#104782]: https://bugs.freedesktop.org/show_bug.cgi?id=104782
  [fdo#104894]: https://bugs.freedesktop.org/show_bug.cgi?id=104894
  [fdo#105602]: https://bugs.freedesktop.org/show_bug.cgi?id=105602
  [fdo#105682]: https://bugs.freedesktop.org/show_bug.cgi?id=105682
  [fdo#105763]: https://bugs.freedesktop.org/show_bug.cgi?id=105763
  [fdo#106510]: https://bugs.freedesktop.org/show_bug.cgi?id=106510
  [fdo#107725]: https://bugs.freedesktop.org/show_bug.cgi?id=107725
  [fdo#107956]: https://bugs.freedesktop.org/show_bug.cgi?id=107956
  [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
  [fdo#108739]: https://bugs.freedesktop.org/show_bug.cgi?id=108739
  [fdo#108948]: https://bugs.freedesktop.org/show_bug.cgi?id=108948
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109373]: https://bugs.freedesktop.org/show_bug.cgi?id=109373
  [fdo#109559]: https://bugs.freedesktop.org/show_bug.cgi?id=109559


Participating hosts (7 -> 5)
------------------------------

  Missing    (2): shard-skl shard-iclb 


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

    * IGT: IGT_4837 -> IGTPW_2441

  CI_DRM_5629: e5bd5364ce58650dc664ee250629aa902dfe64ac @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_2441: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2441/
  IGT_4837: 368e76156f752e6ed6ac32ed9f400567aef7d3fc @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

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

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

* Re: [igt-dev] [PATCH i-g-t] lib/crc: Reset fifo underrun reporting for every crc capture
  2019-02-19  9:11 [igt-dev] [PATCH i-g-t] lib/crc: Reset fifo underrun reporting for every crc capture Daniel Vetter
  2019-02-19  9:54 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
  2019-02-19 11:36 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2019-02-20 12:55 ` Daniel Vetter
  2 siblings, 0 replies; 4+ messages in thread
From: Daniel Vetter @ 2019-02-20 12:55 UTC (permalink / raw)
  To: IGT development; +Cc: Daniel Vetter

On Tue, Feb 19, 2019 at 10:11:06AM +0100, Daniel Vetter wrote:
> We have tons of issues with crc mismatches, but often by that time
> there was already a fifo underrun, which disables further fifo
> underrun reporting. Reset fifo underrun reporting before we capture a
> crc so that it's easier to figure out why the crc mismatch happened.
> 
> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>

Merged with Maarten's irc r-b.
-Daniel

> ---
>  lib/igt_debugfs.c | 21 +++++++++++++++++++++
>  lib/igt_debugfs.h |  2 ++
>  lib/igt_kms.c     |  8 ++------
>  3 files changed, 25 insertions(+), 6 deletions(-)
> 
> diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c
> index 6cfaa97579e7..640c78e972e9 100644
> --- a/lib/igt_debugfs.c
> +++ b/lib/igt_debugfs.c
> @@ -808,6 +808,8 @@ void igt_pipe_crc_start(igt_pipe_crc_t *pipe_crc)
>  	/* Stop first just to make sure we don't have lingering state left. */
>  	igt_pipe_crc_stop(pipe_crc);
>  
> +	igt_reset_fifo_underrun_reporting(pipe_crc->fd);
> +
>  	igt_assert_eq(write(pipe_crc->ctl_fd, src, strlen(src)), strlen(src));
>  
>  	sprintf(buf, "crtc-%d/crc/data", pipe_crc->pipe);
> @@ -1002,6 +1004,25 @@ void igt_pipe_crc_collect_crc(igt_pipe_crc_t *pipe_crc, igt_crc_t *out_crc)
>  	igt_pipe_crc_stop(pipe_crc);
>  }
>  
> +/**
> + * igt_reset_fifo_underrun_reporting:
> + * @drm_fd: drm device file descriptor
> + *
> + * Resets fifo underrun reporting, if supported by the device. Useful since fifo
> + * underrun reporting tends to be one-shot, so good to reset it before the
> + * actual functional test again in case there's been a separate issue happening
> + * while preparing the test setup.
> + */
> +void igt_reset_fifo_underrun_reporting(int drm_fd)
> +{
> +	int fd = igt_debugfs_open(drm_fd, "i915_fifo_underrun_reset", O_WRONLY);
> +	if (fd >= 0) {
> +		igt_assert_eq(write(fd, "y", 1), 1);
> +
> +		close(fd);
> +	}
> +}
> +
>  /*
>   * Drop caches
>   */
> diff --git a/lib/igt_debugfs.h b/lib/igt_debugfs.h
> index 1233cd8f7a07..b9cf0f813773 100644
> --- a/lib/igt_debugfs.h
> +++ b/lib/igt_debugfs.h
> @@ -216,6 +216,8 @@ void igt_require_hpd_storm_ctl(int fd);
>  		  DROP_FREED | \
>  		  DROP_IDLE)
>  
> +void igt_reset_fifo_underrun_reporting(int drm_fd);
> +
>  bool igt_drop_caches_has(int fd, uint64_t val);
>  void igt_drop_caches_set(int fd, uint64_t val);
>  
> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> index 85a911e11060..080f90ae6e8c 100644
> --- a/lib/igt_kms.c
> +++ b/lib/igt_kms.c
> @@ -3269,14 +3269,10 @@ display_commit_changed(igt_display_t *display, enum igt_commit_style s)
>  	}
>  
>  	if (display->first_commit) {
> -		int fd = igt_debugfs_open(display->drm_fd, "i915_fifo_underrun_reset", O_WRONLY);
> -		if (fd >= 0) {
> -			igt_assert_eq(write(fd, "y", 1), 1);
> -
> -			close(fd);
> -		}
> +		igt_reset_fifo_underrun_reporting(display->drm_fd);
>  
>  		igt_display_drop_events(display);
> +
>  		display->first_commit = false;
>  	}
>  }
> -- 
> 2.20.1
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

end of thread, other threads:[~2019-02-20 12:55 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-19  9:11 [igt-dev] [PATCH i-g-t] lib/crc: Reset fifo underrun reporting for every crc capture Daniel Vetter
2019-02-19  9:54 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2019-02-19 11:36 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2019-02-20 12:55 ` [igt-dev] [PATCH i-g-t] " Daniel Vetter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox