From ebab9f080b24ac11507e872fcfdf58ea9cb7e6fc Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Thu, 13 Nov 2014 11:47:19 +0000 Subject: [PATCH] lib: only skip subsequent tests if a timeout occurs outside of a subtest Make timeout behaviour more consistent with igt_fail, where subsequent subtests are only skipped if the failure occurs outside of a subtest. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85718 Signed-off-by: Thomas Wood --- lib/igt_core.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/lib/igt_core.c b/lib/igt_core.c index 38611211..b937f43e 100644 --- a/lib/igt_core.c +++ b/lib/igt_core.c @@ -1481,9 +1481,6 @@ void igt_vlog(enum igt_log_level level, const char *format, va_list args) static void igt_alarm_handler(int signal) { - /* subsequent tests are skipped */ - skip_subtests_henceforth = SKIP; - /* exit with timeout status */ igt_fail(IGT_EXIT_TIMEOUT); } @@ -1492,11 +1489,13 @@ static void igt_alarm_handler(int signal) * igt_set_timeout: * @seconds: number of seconds before timeout * - * Stop the current test and skip any subsequent tests after the specified - * number of seconds have elapsed. The test will exit with #IGT_EXIT_TIMEOUT - * status. Any previous timer is cancelled and no timeout is scheduled if - * @seconds is zero. + * Fail a test and exit with #IGT_EXIT_TIMEOUT status after the specified + * number of seconds have elapsed. If the current test has subtests and the + * timeout occurs outside a subtest, subsequent subtests will be skipped and + * marked as failed. * + * Any previous timer is cancelled and no timeout is scheduled if @seconds is + * zero. */ void igt_set_timeout(unsigned int seconds) {