[Intel-gfx] [PATCH i-g-t] tests/kms_cursor_legacy: make_busy() before get_vblank()

ville.syrjala at linux.intel.com ville.syrjala at linux.intel.com
Tue Mar 14 17:41:33 UTC 2017


From: Ville Syrjälä <ville.syrjala at linux.intel.com>

VLV is a sloth and so doing anything extra between the first and last
get_vblank() is likely to increase the chance of failing the test.
Let's move the make_busy() stuff to happen before the first get_vblank()
to reduce the amount of work done there.

These tests are still failing quite often on my VLV, but that is mostly
caused by igt_kms's tendency to still re-read all the connector properties
and whatnot as part of the commit operation. I suspect that fixing that
would eliminate most of the spurious failures.

Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
---
 tests/kms_cursor_legacy.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
index c7083a070f27..b048f4acfcaf 100644
--- a/tests/kms_cursor_legacy.c
+++ b/tests/kms_cursor_legacy.c
@@ -613,13 +613,13 @@ static void basic_flip_cursor(igt_display_t *display,
 	/* Bind the cursor first to warm up */
 	do_ioctl(display->drm_fd, DRM_IOCTL_MODE_CURSOR, &arg[0]);
 
-	/* Start with a synchronous query to align with the vblank */
-	vblank_start = get_vblank(display->drm_fd, pipe, DRM_VBLANK_NEXTONMISS);
-
 	busy = NULL;
 	if (flags & BASIC_BUSY)
 		busy = make_fb_busy(display->drm_fd, &fb_info);
 
+	/* Start with a synchronous query to align with the vblank */
+	vblank_start = get_vblank(display->drm_fd, pipe, DRM_VBLANK_NEXTONMISS);
+
 	switch (order) {
 	case FLIP_BEFORE_CURSOR:
 		switch (mode) {
-- 
2.10.2



More information about the Intel-gfx mailing list