diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2014-03-11 16:14:33 +0100 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2014-04-13 19:08:17 +0200 |
commit | cc730c418f44245c49776059b2564f54da4449e6 (patch) | |
tree | d976b40b7c62b74707f79452e0e7df6d3da280dd /tests | |
parent | 99b8f807010483128f10f7934a864c78b4438b34 (diff) |
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 <daniel.vetter@ffwll.ch>
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 <daniel.vetter@ffwll.ch>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/kms_flip.c | 9 |
1 files changed, 6 insertions, 3 deletions
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]); |