* [PATCH i-g-t] test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc
@ 2017-12-13 9:35 Maarten Lankhorst
2017-12-13 10:00 ` ✓ Fi.CI.BAT: success for test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc (rev4) Patchwork
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Maarten Lankhorst @ 2017-12-13 9:35 UTC (permalink / raw)
To: intel-gfx
From: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Compiler complained on crc_lowres and crc_hires2 being uninitialized
and indeed, display_commit_mode() seems to have intention of retruning
the value through the parameter that is only a single pointer.
This couses only the local copy of the pointer, the one inside
display_commit_mode(), to be overwritten.
Let's fix that!
Also add missing hires crc comparison (M. Kahola).
v2: make display_commit_mode return just the last CRC
v3: Don't do memory allocations, it's hard. (Maarten)
v4: Use igt_pipe_crc_collect_crc() instead, cleans up crc handling a lot.
Cc: Mika Kahola <mika.kahola@intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
---
tests/kms_plane_lowres.c | 36 ++++++++++++------------------------
1 file changed, 12 insertions(+), 24 deletions(-)
diff --git a/tests/kms_plane_lowres.c b/tests/kms_plane_lowres.c
index 85d3145de4b6..c224a1bf7026 100644
--- a/tests/kms_plane_lowres.c
+++ b/tests/kms_plane_lowres.c
@@ -125,17 +125,12 @@ test_fini(data_t *data, igt_output_t *output, enum pipe pipe)
data->fb = NULL;
}
-static int
+static void
display_commit_mode(igt_display_t *display, igt_pipe_crc_t *pipe_crc,
- enum pipe pipe, int flags, igt_crc_t *crc)
+ enum pipe pipe, int flags, igt_crc_t *out_crc)
{
char buf[256];
- struct drm_event *e = (void *)buf;
- unsigned int vblank_start, vblank_stop;
- int n, ret;
-
- vblank_start = kmstest_get_vblank(display->drm_fd, pipe,
- DRM_VBLANK_NEXTONMISS);
+ int ret;
ret = igt_display_try_commit_atomic(display, flags, NULL);
igt_skip_on(ret != 0);
@@ -144,14 +139,7 @@ display_commit_mode(igt_display_t *display, igt_pipe_crc_t *pipe_crc,
ret = read(display->drm_fd, buf, sizeof(buf));
igt_assert(ret >= 0);
- vblank_stop = kmstest_get_vblank(display->drm_fd, pipe, 0);
- igt_assert_eq(e->type, DRM_EVENT_FLIP_COMPLETE);
- igt_reset_timeout();
-
- n = igt_pipe_crc_get_crcs(pipe_crc, vblank_stop - vblank_start, &crc);
- igt_assert_eq(n, vblank_stop - vblank_start);
-
- return n;
+ igt_pipe_crc_collect_crc(pipe_crc, out_crc);
}
static void
@@ -218,11 +206,11 @@ static void
test_plane_position_with_output(data_t *data, enum pipe pipe,
igt_output_t *output, uint64_t modifier)
{
- igt_crc_t *crc_hires1, *crc_hires2;
- igt_crc_t *crc_lowres;
+ igt_crc_t crc_hires1, crc_hires2;
+ igt_crc_t crc_lowres;
drmModeModeInfo mode_lowres;
drmModeModeInfo *mode1, *mode2, *mode3;
- int ret, n;
+ int ret;
int flags = DRM_MODE_PAGE_FLIP_EVENT | DRM_MODE_ATOMIC_ALLOW_MODESET;
igt_pipe_crc_t *pipe_crc;
@@ -237,10 +225,8 @@ test_plane_position_with_output(data_t *data, enum pipe pipe,
igt_skip_on(ret != 0);
pipe_crc = igt_pipe_crc_new(data->drm_fd, pipe, INTEL_PIPE_CRC_SOURCE_AUTO);
- igt_pipe_crc_start(pipe_crc);
- n = igt_pipe_crc_get_crcs(pipe_crc, 1, &crc_hires1);
- igt_assert_eq(1, n);
+ igt_pipe_crc_collect_crc(pipe_crc, &crc_hires1);
igt_assert_plane_visible(data->drm_fd, pipe, true);
@@ -252,7 +238,7 @@ test_plane_position_with_output(data_t *data, enum pipe pipe,
check_mode(&mode_lowres, mode2);
- display_commit_mode(&data->display, pipe_crc, pipe, flags, crc_lowres);
+ display_commit_mode(&data->display, pipe_crc, pipe, flags, &crc_lowres);
igt_assert_plane_visible(data->drm_fd, pipe, false);
@@ -264,10 +250,12 @@ test_plane_position_with_output(data_t *data, enum pipe pipe,
check_mode(mode1, mode3);
- display_commit_mode(&data->display, pipe_crc, pipe, flags, crc_hires2);
+ display_commit_mode(&data->display, pipe_crc, pipe, flags, &crc_hires2);
igt_assert_plane_visible(data->drm_fd, pipe, true);
+ igt_assert_crc_equal(&crc_hires1, &crc_hires2);
+
igt_pipe_crc_stop(pipe_crc);
igt_pipe_crc_free(pipe_crc);
--
2.15.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 5+ messages in thread* ✓ Fi.CI.BAT: success for test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc (rev4)
2017-12-13 9:35 [PATCH i-g-t] test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc Maarten Lankhorst
@ 2017-12-13 10:00 ` Patchwork
2017-12-13 10:33 ` [PATCH i-g-t] test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc Mika Kahola
2017-12-13 11:08 ` ✗ Fi.CI.IGT: warning for test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc (rev4) Patchwork
2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2017-12-13 10:00 UTC (permalink / raw)
To: Maarten Lankhorst; +Cc: intel-gfx
== Series Details ==
Series: test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc (rev4)
URL : https://patchwork.freedesktop.org/series/34749/
State : success
== Summary ==
IGT patchset tested on top of latest successful build
74407418720ff7a9de7caabec05d4c3afe9a5c51 igt/kms_flip: Allow very large bo to fail pageflips with E2BIG
with latest DRM-Tip kernel build CI_DRM_3503
8874c0f95698 drm-tip: 2017y-12m-12d-21h-34m-33s UTC integration manifest
No testlist changes.
Test gem_mmap_gtt:
Subgroup basic-small-bo-tiledx:
pass -> FAIL (fi-gdg-551) fdo#102575
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fi-bdw-5557u total:288 pass:267 dwarn:0 dfail:0 fail:0 skip:21 time:438s
fi-bdw-gvtdvm total:288 pass:264 dwarn:0 dfail:0 fail:0 skip:24 time:444s
fi-blb-e6850 total:288 pass:223 dwarn:1 dfail:0 fail:0 skip:64 time:382s
fi-bsw-n3050 total:288 pass:242 dwarn:0 dfail:0 fail:0 skip:46 time:516s
fi-bwr-2160 total:288 pass:183 dwarn:0 dfail:0 fail:0 skip:105 time:281s
fi-bxt-dsi total:288 pass:258 dwarn:0 dfail:0 fail:0 skip:30 time:506s
fi-bxt-j4205 total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:508s
fi-byt-j1900 total:288 pass:253 dwarn:0 dfail:0 fail:0 skip:35 time:487s
fi-byt-n2820 total:288 pass:249 dwarn:0 dfail:0 fail:0 skip:39 time:475s
fi-elk-e7500 total:224 pass:163 dwarn:15 dfail:0 fail:0 skip:45
fi-gdg-551 total:288 pass:178 dwarn:1 dfail:0 fail:1 skip:108 time:271s
fi-glk-1 total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:542s
fi-hsw-4770 total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:375s
fi-hsw-4770r total:288 pass:224 dwarn:0 dfail:0 fail:0 skip:64 time:260s
fi-ilk-650 total:288 pass:228 dwarn:0 dfail:0 fail:0 skip:60 time:391s
fi-ivb-3520m total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:479s
fi-ivb-3770 total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:449s
fi-kbl-7500u total:288 pass:263 dwarn:1 dfail:0 fail:0 skip:24 time:493s
fi-kbl-7560u total:288 pass:269 dwarn:0 dfail:0 fail:0 skip:19 time:528s
fi-kbl-7567u total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:473s
fi-kbl-r total:288 pass:260 dwarn:1 dfail:0 fail:0 skip:27 time:536s
fi-pnv-d510 total:288 pass:222 dwarn:1 dfail:0 fail:0 skip:65 time:592s
fi-skl-6260u total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:453s
fi-skl-6600u total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:546s
fi-skl-6700hq total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:572s
fi-skl-6700k total:288 pass:264 dwarn:0 dfail:0 fail:0 skip:24 time:513s
fi-skl-6770hq total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:494s
fi-skl-gvtdvm total:288 pass:265 dwarn:0 dfail:0 fail:0 skip:23 time:444s
fi-snb-2520m total:288 pass:249 dwarn:0 dfail:0 fail:0 skip:39 time:550s
fi-snb-2600 total:288 pass:248 dwarn:0 dfail:0 fail:0 skip:40 time:419s
Blacklisted hosts:
fi-cfl-s2 total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:602s
fi-cnl-y total:216 pass:195 dwarn:0 dfail:0 fail:0 skip:20
fi-glk-dsi total:288 pass:258 dwarn:0 dfail:0 fail:0 skip:30 time:489s
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_661/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH i-g-t] test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc
2017-12-13 9:35 [PATCH i-g-t] test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc Maarten Lankhorst
2017-12-13 10:00 ` ✓ Fi.CI.BAT: success for test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc (rev4) Patchwork
@ 2017-12-13 10:33 ` Mika Kahola
2017-12-13 11:08 ` ✗ Fi.CI.IGT: warning for test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc (rev4) Patchwork
2 siblings, 0 replies; 5+ messages in thread
From: Mika Kahola @ 2017-12-13 10:33 UTC (permalink / raw)
To: Maarten Lankhorst, intel-gfx
On Wed, 2017-12-13 at 10:35 +0100, Maarten Lankhorst wrote:
> From: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
>
> Compiler complained on crc_lowres and crc_hires2 being uninitialized
> and indeed, display_commit_mode() seems to have intention of
> retruning
> the value through the parameter that is only a single pointer.
>
> This couses only the local copy of the pointer, the one inside
> display_commit_mode(), to be overwritten.
>
> Let's fix that!
>
> Also add missing hires crc comparison (M. Kahola).
>
> v2: make display_commit_mode return just the last CRC
> v3: Don't do memory allocations, it's hard. (Maarten)
> v4: Use igt_pipe_crc_collect_crc() instead, cleans up crc handling a
> lot.
>
> Cc: Mika Kahola <mika.kahola@intel.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
With typo s/couses/causes/ fixed this is
Reviewed-by: Mika Kahola <mika.kahola@intel.com>
> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
> Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> ---
> tests/kms_plane_lowres.c | 36 ++++++++++++------------------------
> 1 file changed, 12 insertions(+), 24 deletions(-)
>
> diff --git a/tests/kms_plane_lowres.c b/tests/kms_plane_lowres.c
> index 85d3145de4b6..c224a1bf7026 100644
> --- a/tests/kms_plane_lowres.c
> +++ b/tests/kms_plane_lowres.c
> @@ -125,17 +125,12 @@ test_fini(data_t *data, igt_output_t *output,
> enum pipe pipe)
> data->fb = NULL;
> }
>
> -static int
> +static void
> display_commit_mode(igt_display_t *display, igt_pipe_crc_t
> *pipe_crc,
> - enum pipe pipe, int flags, igt_crc_t *crc)
> + enum pipe pipe, int flags, igt_crc_t *out_crc)
> {
> char buf[256];
> - struct drm_event *e = (void *)buf;
> - unsigned int vblank_start, vblank_stop;
> - int n, ret;
> -
> - vblank_start = kmstest_get_vblank(display->drm_fd, pipe,
> - DRM_VBLANK_NEXTONMISS);
> + int ret;
>
> ret = igt_display_try_commit_atomic(display, flags, NULL);
> igt_skip_on(ret != 0);
> @@ -144,14 +139,7 @@ display_commit_mode(igt_display_t *display,
> igt_pipe_crc_t *pipe_crc,
> ret = read(display->drm_fd, buf, sizeof(buf));
> igt_assert(ret >= 0);
>
> - vblank_stop = kmstest_get_vblank(display->drm_fd, pipe, 0);
> - igt_assert_eq(e->type, DRM_EVENT_FLIP_COMPLETE);
> - igt_reset_timeout();
> -
> - n = igt_pipe_crc_get_crcs(pipe_crc, vblank_stop -
> vblank_start, &crc);
> - igt_assert_eq(n, vblank_stop - vblank_start);
> -
> - return n;
> + igt_pipe_crc_collect_crc(pipe_crc, out_crc);
> }
>
> static void
> @@ -218,11 +206,11 @@ static void
> test_plane_position_with_output(data_t *data, enum pipe pipe,
> igt_output_t *output, uint64_t
> modifier)
> {
> - igt_crc_t *crc_hires1, *crc_hires2;
> - igt_crc_t *crc_lowres;
> + igt_crc_t crc_hires1, crc_hires2;
> + igt_crc_t crc_lowres;
> drmModeModeInfo mode_lowres;
> drmModeModeInfo *mode1, *mode2, *mode3;
> - int ret, n;
> + int ret;
> int flags = DRM_MODE_PAGE_FLIP_EVENT |
> DRM_MODE_ATOMIC_ALLOW_MODESET;
> igt_pipe_crc_t *pipe_crc;
>
> @@ -237,10 +225,8 @@ test_plane_position_with_output(data_t *data,
> enum pipe pipe,
> igt_skip_on(ret != 0);
>
> pipe_crc = igt_pipe_crc_new(data->drm_fd, pipe,
> INTEL_PIPE_CRC_SOURCE_AUTO);
> - igt_pipe_crc_start(pipe_crc);
>
> - n = igt_pipe_crc_get_crcs(pipe_crc, 1, &crc_hires1);
> - igt_assert_eq(1, n);
> + igt_pipe_crc_collect_crc(pipe_crc, &crc_hires1);
>
> igt_assert_plane_visible(data->drm_fd, pipe, true);
>
> @@ -252,7 +238,7 @@ test_plane_position_with_output(data_t *data,
> enum pipe pipe,
>
> check_mode(&mode_lowres, mode2);
>
> - display_commit_mode(&data->display, pipe_crc, pipe, flags,
> crc_lowres);
> + display_commit_mode(&data->display, pipe_crc, pipe, flags,
> &crc_lowres);
>
> igt_assert_plane_visible(data->drm_fd, pipe, false);
>
> @@ -264,10 +250,12 @@ test_plane_position_with_output(data_t *data,
> enum pipe pipe,
>
> check_mode(mode1, mode3);
>
> - display_commit_mode(&data->display, pipe_crc, pipe, flags,
> crc_hires2);
> + display_commit_mode(&data->display, pipe_crc, pipe, flags,
> &crc_hires2);
>
> igt_assert_plane_visible(data->drm_fd, pipe, true);
>
> + igt_assert_crc_equal(&crc_hires1, &crc_hires2);
> +
> igt_pipe_crc_stop(pipe_crc);
> igt_pipe_crc_free(pipe_crc);
>
--
Mika Kahola - Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread* ✗ Fi.CI.IGT: warning for test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc (rev4)
2017-12-13 9:35 [PATCH i-g-t] test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc Maarten Lankhorst
2017-12-13 10:00 ` ✓ Fi.CI.BAT: success for test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc (rev4) Patchwork
2017-12-13 10:33 ` [PATCH i-g-t] test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc Mika Kahola
@ 2017-12-13 11:08 ` Patchwork
2017-12-13 11:34 ` Arkadiusz Hiler
2 siblings, 1 reply; 5+ messages in thread
From: Patchwork @ 2017-12-13 11:08 UTC (permalink / raw)
To: Maarten Lankhorst; +Cc: intel-gfx
== Series Details ==
Series: test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc (rev4)
URL : https://patchwork.freedesktop.org/series/34749/
State : warning
== Summary ==
Test pm_rc6_residency:
Subgroup rc6-accuracy:
pass -> SKIP (shard-snb)
Test gem_tiled_swapping:
Subgroup non-threaded:
incomplete -> PASS (shard-snb) fdo#104009
Test gem_pwrite:
Subgroup huge-gtt-backwards:
incomplete -> PASS (shard-hsw) fdo#104218
Test gem_softpin:
Subgroup noreloc-s4:
fail -> SKIP (shard-snb) fdo#103375
Test kms_frontbuffer_tracking:
Subgroup fbc-1p-offscren-pri-shrfb-draw-render:
pass -> FAIL (shard-snb) fdo#101623 +1
fdo#104009 https://bugs.freedesktop.org/show_bug.cgi?id=104009
fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#101623 https://bugs.freedesktop.org/show_bug.cgi?id=101623
shard-hsw total:2712 pass:1537 dwarn:1 dfail:0 fail:10 skip:1164 time:9509s
shard-snb total:2712 pass:1307 dwarn:1 dfail:0 fail:12 skip:1392 time:8071s
Blacklisted hosts:
shard-apl total:2712 pass:1688 dwarn:1 dfail:0 fail:22 skip:1001 time:13952s
shard-kbl total:2712 pass:1808 dwarn:1 dfail:0 fail:24 skip:879 time:11134s
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_661/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-12-13 11:34 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-12-13 9:35 [PATCH i-g-t] test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc Maarten Lankhorst
2017-12-13 10:00 ` ✓ Fi.CI.BAT: success for test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc (rev4) Patchwork
2017-12-13 10:33 ` [PATCH i-g-t] test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc Mika Kahola
2017-12-13 11:08 ` ✗ Fi.CI.IGT: warning for test/kms_plane_lowres: Fix display_commit_mode() so it returns the crc (rev4) Patchwork
2017-12-13 11:34 ` Arkadiusz Hiler
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox