The suite stalls the CP, until RCA is done the suite is disabled to not disrupt regression testing. Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@xxxxxxx> --- tests/amdgpu/amdgpu_test.c | 2 +- tests/amdgpu/amdgpu_test.h | 5 +++++ tests/amdgpu/deadlock_tests.c | 19 +++++++++++++++++++ 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/tests/amdgpu/amdgpu_test.c b/tests/amdgpu/amdgpu_test.c index 91010dc..ee64152 100644 --- a/tests/amdgpu/amdgpu_test.c +++ b/tests/amdgpu/amdgpu_test.c @@ -162,7 +162,7 @@ static Suites_Active_Status suites_active_stat[] = { }, { .pName = DEADLOCK_TESTS_STR, - .pActive = always_active, + .pActive = suite_deadlock_tests_enable, }, { .pName = VM_TESTS_STR, diff --git a/tests/amdgpu/amdgpu_test.h b/tests/amdgpu/amdgpu_test.h index dd236ed..414fcb8 100644 --- a/tests/amdgpu/amdgpu_test.h +++ b/tests/amdgpu/amdgpu_test.h @@ -160,6 +160,11 @@ int suite_deadlock_tests_init(); int suite_deadlock_tests_clean(); /** + * Decide if the suite is enabled by default or not. + */ +CU_BOOL suite_deadlock_tests_enable(void); + +/** * Tests in uvd enc test suite */ extern CU_TestInfo deadlock_tests[]; diff --git a/tests/amdgpu/deadlock_tests.c b/tests/amdgpu/deadlock_tests.c index f5c4552..84f4deb 100644 --- a/tests/amdgpu/deadlock_tests.c +++ b/tests/amdgpu/deadlock_tests.c @@ -36,6 +36,7 @@ #include "amdgpu_test.h" #include "amdgpu_drm.h" +#include "amdgpu_internal.h" #include <pthread.h> @@ -87,6 +88,24 @@ static void amdgpu_deadlock_helper(unsigned ip_type); static void amdgpu_deadlock_gfx(void); static void amdgpu_deadlock_compute(void); +CU_BOOL suite_deadlock_tests_enable(void) +{ + if (amdgpu_device_initialize(drm_amdgpu[0], &major_version, + &minor_version, &device_handle)) + return CU_FALSE; + + if (amdgpu_device_deinitialize(device_handle)) + return CU_FALSE; + + + if (device_handle->info.family_id == AMDGPU_FAMILY_AI) { + printf("\n\nCurrently hangs the CP on this ASIC, deadlock suite disabled\n"); + return CU_FALSE; + } + + return CU_TRUE; +} + int suite_deadlock_tests_init(void) { struct amdgpu_gpu_info gpu_info = {0}; -- 2.7.4 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel