From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4364910E093 for ; Tue, 20 Jun 2023 10:39:20 +0000 (UTC) From: Bommu Krishnaiah To: igt-dev@lists.freedesktop.org Date: Tue, 20 Jun 2023 16:04:12 +0530 Message-Id: <20230620103412.31591-1-krishnaiah.bommu@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [igt-dev] [PATCH] tests/xe_exec_compute_mode: Increase fence timeout for simulation env List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Bommu Krishnaiah Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" List-ID: Increase fence timeout to 100 seconds for simulation env. Value is determined based on experiments. Signed-off-by: Bommu Krishnaiah --- tests/xe/xe_exec_compute_mode.c | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/tests/xe/xe_exec_compute_mode.c b/tests/xe/xe_exec_compute_mode.c index 2d950fdc..e2c9d0f3 100644 --- a/tests/xe/xe_exec_compute_mode.c +++ b/tests/xe/xe_exec_compute_mode.c @@ -110,6 +110,7 @@ test_exec(int fd, struct drm_xe_engine_class_instance *eci, } *data; int i, j, b; int map_fd = -1; + int64_t fence_timeout; igt_assert(n_engines <= MAX_N_ENGINES); @@ -181,7 +182,12 @@ test_exec(int fd, struct drm_xe_engine_class_instance *eci, to_user_pointer(data), addr, bo_size, sync, 1); #define ONE_SEC 1000 - xe_wait_ufence(fd, &data[0].vm_sync, USER_FENCE_VALUE, NULL, ONE_SEC); +#define HUNDRED_SEC 100000 + + fence_timeout = igt_run_in_simulation() ? HUNDRED_SEC : ONE_SEC; + + xe_wait_ufence(fd, &data[0].vm_sync, USER_FENCE_VALUE, NULL, + fence_timeout); data[0].vm_sync = 0; for (i = 0; i < n_execs; i++) { @@ -207,7 +213,7 @@ test_exec(int fd, struct drm_xe_engine_class_instance *eci, if (flags & REBIND && i + 1 != n_execs) { xe_wait_ufence(fd, &data[i].exec_sync, USER_FENCE_VALUE, - NULL, ONE_SEC); + NULL, fence_timeout); xe_vm_unbind_async(fd, vm, bind_engines[e], 0, addr, bo_size, NULL, 0); @@ -223,7 +229,7 @@ test_exec(int fd, struct drm_xe_engine_class_instance *eci, addr, bo_size, sync, 1); xe_wait_ufence(fd, &data[0].vm_sync, USER_FENCE_VALUE, - NULL, ONE_SEC); + NULL, fence_timeout); data[0].vm_sync = 0; } @@ -236,7 +242,8 @@ test_exec(int fd, struct drm_xe_engine_class_instance *eci, * an invalidate. */ xe_wait_ufence(fd, &data[i].exec_sync, - USER_FENCE_VALUE, NULL, ONE_SEC); + USER_FENCE_VALUE, NULL, + fence_timeout); igt_assert_eq(data[i].data, 0xc0ffee); } else if (i * 2 != n_execs) { /* @@ -266,7 +273,7 @@ test_exec(int fd, struct drm_xe_engine_class_instance *eci, j = flags & INVALIDATE ? n_execs - 1 : 0; for (i = j; i < n_execs; i++) xe_wait_ufence(fd, &data[i].exec_sync, USER_FENCE_VALUE, NULL, - ONE_SEC); + fence_timeout); /* Wait for all execs to complete */ if (flags & INVALIDATE) @@ -275,7 +282,8 @@ test_exec(int fd, struct drm_xe_engine_class_instance *eci, sync[0].addr = to_user_pointer(&data[0].vm_sync); xe_vm_unbind_async(fd, vm, bind_engines[0], 0, addr, bo_size, sync, 1); - xe_wait_ufence(fd, &data[0].vm_sync, USER_FENCE_VALUE, NULL, ONE_SEC); + xe_wait_ufence(fd, &data[0].vm_sync, USER_FENCE_VALUE, NULL, + fence_timeout); for (i = j; i < n_execs; i++) igt_assert_eq(data[i].data, 0xc0ffee); -- 2.25.1