All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH igt] tests/kms_cursor_crc: Actually wait an extra vblank
@ 2022-07-06 21:59 Rob Clark
  2022-07-06 23:00 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
  2022-07-07  7:17 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  0 siblings, 2 replies; 3+ messages in thread
From: Rob Clark @ 2022-07-06 21:59 UTC (permalink / raw)
  To: igt-dev; +Cc: Rob Clark

From: Rob Clark <robdclark@chromium.org>

Fulfill the comment that rightly predicts an extra vblank is needed
before attempting to read the CRC after a legacy cursor update.

On the driver side, if the cursor update comes too close to vblank,
it could end up being scheduled for the *following* vblank to avoid
blocking.  Hence needing to vblanks to be sure the CRC reflects the
cursor update.

Fixes flakey results on msm.

Signed-off-by: Rob Clark <robdclark@chromium.org>
---
 tests/kms_cursor_crc.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tests/kms_cursor_crc.c b/tests/kms_cursor_crc.c
index 5c90537b..ac16135c 100644
--- a/tests/kms_cursor_crc.c
+++ b/tests/kms_cursor_crc.c
@@ -204,6 +204,8 @@ static void do_single_test(data_t *data, int x, int y, bool hw_test,
 		/* Extra vblank wait is because nonblocking cursor ioctl */
 		igt_wait_for_vblank(data->drm_fd,
 				display->pipes[data->pipe].crtc_offset);
+		igt_wait_for_vblank(data->drm_fd,
+				display->pipes[data->pipe].crtc_offset);
 
 		igt_pipe_crc_get_current(data->drm_fd, pipe_crc, hwcrc);
 
-- 
2.36.1

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

end of thread, other threads:[~2022-07-07  7:17 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-06 21:59 [igt-dev] [PATCH igt] tests/kms_cursor_crc: Actually wait an extra vblank Rob Clark
2022-07-06 23:00 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2022-07-07  7:17 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork

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