From cc730c418f44245c49776059b2564f54da4449e6 Mon Sep 17 00:00:00 2001 From: Daniel Vetter Date: Tue, 11 Mar 2014 16:14:33 +0100 Subject: lib/kmstest: Fix up tiled buffer creation When extracting a raw __gem_set_tiling helper I've fumbled this in commit 590f6101402b51bca54f69c002380bda967484ea Author: Daniel Vetter Date: Wed Oct 9 20:50:50 2013 +0200 lib/drmtest: extract rawer __gem_set_tiling Fix things up so that we properly propaget the error again. Now to make this all properly work we also need to make kms_flip a notch more robust against such failures ... This only blows up on gen2/3 with the pan tests which want a too wide framebuffer for tiling. Signed-off-by: Daniel Vetter --- tests/kms_flip.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/kms_flip.c b/tests/kms_flip.c index 24bbc0ba..c2f0d2ee 100644 --- a/tests/kms_flip.c +++ b/tests/kms_flip.c @@ -1277,11 +1277,13 @@ static void run_test_on_crtc_set(struct test_output *o, int *crtc_idxs, true, &o->fb_info[2]); igt_assert(o->fb_ids[0]); igt_assert(o->fb_ids[1]); - igt_assert(o->fb_ids[2]); + if (o->flags & TEST_FB_BAD_TILING) + igt_require(o->fb_ids[2]); paint_flip_mode(&o->fb_info[0], false); paint_flip_mode(&o->fb_info[1], true); - paint_flip_mode(&o->fb_info[2], true); + if (o->fb_ids[2]) + paint_flip_mode(&o->fb_info[2], true); if (o->flags & TEST_FB_BAD_TILING) set_y_tiling(o, 2); @@ -1329,7 +1331,8 @@ static void run_test_on_crtc_set(struct test_output *o, int *crtc_idxs, igt_info("\n%s: PASSED\n\n", test_name); out: - igt_remove_fb(drm_fd, &o->fb_info[2]); + if (o->fb_ids[2]) + igt_remove_fb(drm_fd, &o->fb_info[2]); igt_remove_fb(drm_fd, &o->fb_info[1]); igt_remove_fb(drm_fd, &o->fb_info[0]); -- cgit v1.2.3