diff mbox

[libdrm] amdgpu: Disable deadlock test suite for Vega 10

Message ID 1510668455-4979-1-git-send-email-andrey.grodzovsky@amd.com (mailing list archive)
State New, archived
Headers show

Commit Message

Andrey Grodzovsky Nov. 14, 2017, 2:07 p.m. UTC
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@amd.com>
---
 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(-)

Comments

Christian König Nov. 15, 2017, 9:31 a.m. UTC | #1
Am 14.11.2017 um 15:07 schrieb Andrey Grodzovsky:
> 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@amd.com>

Reviewed-by: Christian König <christian.koenig@amd.com>

Since you now have commit rights please try to push by yourself.

Thanks,
Christian.

> ---
>   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};
Andrey Grodzovsky Nov. 16, 2017, 5:06 a.m. UTC | #2
Pushed to master branch of git.freedesktop.org/git/mesa/drm, do I also 
need to push to our local tree ?

Thanks,

Andrey

On 2017-11-15 04:31 AM, Christian König wrote:
> Am 14.11.2017 um 15:07 schrieb Andrey Grodzovsky:
>> 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@amd.com>
>
> Reviewed-by: Christian König <christian.koenig@amd.com>
>
> Since you now have commit rights please try to push by yourself.
>
> Thanks,
> Christian.
>
>> ---
>>   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};
>
>
Christian König Nov. 16, 2017, 8:14 a.m. UTC | #3
> do I also need to push to our local tree ? 
No, I only push to the master branch all the time as well.

AMD local trees are only cherry picked from upstream as far as I know.

Regards,
Christian.

Am 16.11.2017 um 06:06 schrieb Andrey Grodzovsky:
> Pushed to master branch of git.freedesktop.org/git/mesa/drm, do I also 
> need to push to our local tree ?
>
> Thanks,
>
> Andrey
>
> On 2017-11-15 04:31 AM, Christian König wrote:
>> Am 14.11.2017 um 15:07 schrieb Andrey Grodzovsky:
>>> 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@amd.com>
>>
>> Reviewed-by: Christian König <christian.koenig@amd.com>
>>
>> Since you now have commit rights please try to push by yourself.
>>
>> Thanks,
>> Christian.
>>
>>> ---
>>>   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};
>>
>>
>
diff mbox

Patch

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};