From e6b3f906cef26e1efb8625f5dd4e460b4c79a771 Mon Sep 17 00:00:00 2001 From: Jesse Barnes Date: Fri, 26 Mar 2010 13:13:57 -0700 Subject: modetest: add optional select codepath For misc. testing. --- tests/modetest/modetest.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/tests/modetest/modetest.c b/tests/modetest/modetest.c index c12699cb..0a60c896 100644 --- a/tests/modetest/modetest.c +++ b/tests/modetest/modetest.c @@ -618,6 +618,7 @@ set_mode(struct connector *c, int count, int page_flip) evctx.page_flip_handler = page_flip_handler; while (1) { +#if 0 struct pollfd pfd[2]; pfd[0].fd = 0; @@ -632,6 +633,24 @@ set_mode(struct connector *c, int count, int page_flip) if (pfd[0].revents) break; +#else + struct timeval timeout = { .tv_sec = 3, .tv_usec = 0 }; + fd_set fds; + int ret; + + FD_ZERO(&fds); + FD_SET(0, &fds); + FD_SET(fd, &fds); + ret = select(fd + 1, &fds, NULL, NULL, &timeout); + + if (ret <= 0) { + fprintf(stderr, "select timed out or error (ret %d)\n", + ret); + continue; + } else if (FD_ISSET(0, &fds)) { + break; + } +#endif drmHandleEvent(fd, &evctx); } -- cgit v1.2.3