Move the panning to a more logical place where the rest of the test steps are performed. This won't change things in practice, since the first thing drmHandleEvent does is call the flip_handler. Signed-off-by: Imre Deak <imre.deak at intel.com> --- tests/flip_test.c | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/tests/flip_test.c b/tests/flip_test.c index 06768a4..0825cda 100644 --- a/tests/flip_test.c +++ b/tests/flip_test.c @@ -218,6 +218,20 @@ static void page_flip_handler(int fd, unsigned int frame, unsigned int sec, } } + /* pan before the flip completes */ + if (o->flags & TEST_PAN) { + int x_ofs = o->count * 10 > o->mode.hdisplay ? + o->mode.hdisplay : o->count * 10; + + if (drmModeSetCrtc(drm_fd, o->crtc, o->fb_ids[o->current_fb_id], + x_ofs, 0, &o->id, 1, &o->mode)) { + fprintf(stderr, "failed to pan (%dx%d@%dHz): %s\n", + o->fb_width, o->fb_height, + o->mode.vrefresh, strerror(errno)); + exit(7); + } + } + if (o->flags & TEST_WITH_DUMMY_LOAD) emit_dummy_load(o); @@ -481,21 +495,6 @@ static void flip_mode(struct test_output *o, int crtc, int duration) break; } - /* pan before the flip completes */ - if (o->flags & TEST_PAN) { - int x_ofs = o->count * 10 > o->mode.hdisplay ? o->mode.hdisplay : - o->count * 10; - - if (drmModeSetCrtc(drm_fd, o->crtc, o->fb_ids[o->current_fb_id], - x_ofs, 0, - &o->id, 1, &o->mode)) { - fprintf(stderr, "failed to pan (%dx%d@%dHz): %s\n", - o->fb_width, o->fb_height, - o->mode.vrefresh, strerror(errno)); - exit(7); - } - } - ret = drmHandleEvent(drm_fd, &evctx); assert(ret == 0); } -- 1.7.9.5