From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 511D410E184 for ; Thu, 15 Jun 2023 11:55:34 +0000 (UTC) From: Andrzej Hajda To: igt-dev@lists.freedesktop.org Date: Thu, 15 Jun 2023 13:55:16 +0200 Message-Id: <20230615115516.1684584-1-andrzej.hajda@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [igt-dev] [PATCH i-g-t v2] i915/kms_busy: reduce heartbeat intervals only if neccessary List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Lucas De Marchi , Nirmoy Das Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" List-ID: Reducing heartbeat intervals may downgrade individual engine resets to full GPU resets. The latter is not desirable, especially on simulations, which do not support GPU reset. Only tests with reset flag enabled need reduced hearbeat intervals. v2: moved timeouts init/restore to fixups of affected tests, to allow proper work in case test fail Reviewed-by: Nirmoy Das Signed-off-by: Andrzej Hajda --- tests/i915/kms_busy.c | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/tests/i915/kms_busy.c b/tests/i915/kms_busy.c index 20d3058fb6f..3b838cb8005 100644 --- a/tests/i915/kms_busy.c +++ b/tests/i915/kms_busy.c @@ -390,8 +390,6 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL) { "extended-modeset-hang-oldfb-with-reset", true, false, true }, { "extended-modeset-hang-newfb-with-reset", true, true, true }, }; - struct gem_engine_properties saved_gpu_timeouts[GEM_MAX_ENGINES]; - int num_engines; int fd; igt_fixture { @@ -409,8 +407,6 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL) for_each_pipe(&display, pipe) active_pipes[last_pipe++] = pipe; last_pipe--; - - gpu_engines_init_timeouts(fd, ARRAY_SIZE(saved_gpu_timeouts), &num_engines, saved_gpu_timeouts); } /* XXX Extend to cover atomic rendering tests to all planes + legacy */ @@ -470,8 +466,16 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL) } for (i = 0; i < sizeof(tests) / sizeof (tests[0]); i++) { - igt_fixture + struct gem_engine_properties saved_gpu_timeouts[GEM_MAX_ENGINES]; + int num_engines; + + igt_fixture { igt_require(display.is_atomic); + if (tests[i].reset) + gpu_engines_init_timeouts(display.drm_fd, + ARRAY_SIZE(saved_gpu_timeouts), + &num_engines, saved_gpu_timeouts); + } igt_subtest_with_dynamic(tests[i].name) { igt_hang_t hang; @@ -501,10 +505,14 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL) igt_disallow_hang(display.drm_fd, hang); } + + igt_fixture { + if (tests[i].reset) + gpu_engines_restore_timeouts(display.drm_fd, num_engines, saved_gpu_timeouts); + } } igt_fixture { - gpu_engines_restore_timeouts(fd, num_engines, saved_gpu_timeouts); igt_display_fini(&display); close(display.drm_fd); } -- 2.34.1