diff mbox series

[i-g-t] tests/i915/gem_ctx_persistence: Skip some subtests

Message ID 20230524191906.2160802-1-vinay.belgaumkar@intel.com (mailing list archive)
State New, archived
Headers show
Series [i-g-t] tests/i915/gem_ctx_persistence: Skip some subtests | expand

Commit Message

Vinay Belgaumkar May 24, 2023, 7:19 p.m. UTC
Hang and heartbeat subtests are not supported with GuC submission
enabled.

Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
---
 tests/i915/gem_ctx_persistence.c | 32 +++++++++++++++++++-------------
 1 file changed, 19 insertions(+), 13 deletions(-)

Comments

Kamil Konieczny May 25, 2023, 6:25 p.m. UTC | #1
Hi Vinay,

On 2023-05-24 at 12:19:06 -0700, Vinay Belgaumkar wrote:
> Hang and heartbeat subtests are not supported with GuC submission
> enabled.
> 
> Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
> ---
>  tests/i915/gem_ctx_persistence.c | 32 +++++++++++++++++++-------------
>  1 file changed, 19 insertions(+), 13 deletions(-)
> 
> diff --git a/tests/i915/gem_ctx_persistence.c b/tests/i915/gem_ctx_persistence.c
> index 42cf96329..1e122535e 100644
> --- a/tests/i915/gem_ctx_persistence.c
> +++ b/tests/i915/gem_ctx_persistence.c
> @@ -1366,19 +1366,25 @@ igt_main
>  
>  	igt_subtest("hostile")
>  		test_nohangcheck_hostile(i915, &empty_cfg);
> -	igt_subtest("hang")
> -		test_nohangcheck_hang(i915, &empty_cfg);
> -
> -	igt_subtest("heartbeat-stop")
> -		test_noheartbeat_many(i915, 1, 0);
> -	igt_subtest("heartbeat-hang")
> -		test_noheartbeat_many(i915, 1, IGT_SPIN_NO_PREEMPTION);
> -	igt_subtest("heartbeat-many")
> -		test_noheartbeat_many(i915, 16, 0);
> -	igt_subtest("heartbeat-close")
> -		test_noheartbeat_close(i915, 0);
> -	igt_subtest("heartbeat-hostile")
> -		test_noheartbeat_close(i915, IGT_SPIN_NO_PREEMPTION);
> +
> +	igt_subtest_group {
> +		igt_fixture
> +			igt_skip_on(gem_using_guc_submission(i915));
----------------------- ^^^^^^^^^^^
You cannot put this in fixture as there is no test defined in it.
Place skips at begin of test functions that need it.

Regards,
Kamil

> +
> +		igt_subtest("hang")
> +			test_nohangcheck_hang(i915, &empty_cfg);
> +
> +		igt_subtest("heartbeat-stop")
> +			test_noheartbeat_many(i915, 1, 0);
> +		igt_subtest("heartbeat-hang")
> +			test_noheartbeat_many(i915, 1, IGT_SPIN_NO_PREEMPTION);
> +		igt_subtest("heartbeat-many")
> +			test_noheartbeat_many(i915, 16, 0);
> +		igt_subtest("heartbeat-close")
> +			test_noheartbeat_close(i915, 0);
> +		igt_subtest("heartbeat-hostile")
> +			test_noheartbeat_close(i915, IGT_SPIN_NO_PREEMPTION);
> +	}
>  
>  	igt_subtest_group {
>  		igt_fixture
> -- 
> 2.38.1
>
Vinay Belgaumkar June 1, 2023, 6:39 p.m. UTC | #2
On 5/25/2023 11:25 AM, Kamil Konieczny wrote:
> Hi Vinay,
>
> On 2023-05-24 at 12:19:06 -0700, Vinay Belgaumkar wrote:
>> Hang and heartbeat subtests are not supported with GuC submission
>> enabled.
>>
>> Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
>> ---
>>   tests/i915/gem_ctx_persistence.c | 32 +++++++++++++++++++-------------
>>   1 file changed, 19 insertions(+), 13 deletions(-)
>>
>> diff --git a/tests/i915/gem_ctx_persistence.c b/tests/i915/gem_ctx_persistence.c
>> index 42cf96329..1e122535e 100644
>> --- a/tests/i915/gem_ctx_persistence.c
>> +++ b/tests/i915/gem_ctx_persistence.c
>> @@ -1366,19 +1366,25 @@ igt_main
>>   
>>   	igt_subtest("hostile")
>>   		test_nohangcheck_hostile(i915, &empty_cfg);
>> -	igt_subtest("hang")
>> -		test_nohangcheck_hang(i915, &empty_cfg);
>> -
>> -	igt_subtest("heartbeat-stop")
>> -		test_noheartbeat_many(i915, 1, 0);
>> -	igt_subtest("heartbeat-hang")
>> -		test_noheartbeat_many(i915, 1, IGT_SPIN_NO_PREEMPTION);
>> -	igt_subtest("heartbeat-many")
>> -		test_noheartbeat_many(i915, 16, 0);
>> -	igt_subtest("heartbeat-close")
>> -		test_noheartbeat_close(i915, 0);
>> -	igt_subtest("heartbeat-hostile")
>> -		test_noheartbeat_close(i915, IGT_SPIN_NO_PREEMPTION);
>> +
>> +	igt_subtest_group {
>> +		igt_fixture
>> +			igt_skip_on(gem_using_guc_submission(i915));
> ----------------------- ^^^^^^^^^^^
> You cannot put this in fixture as there is no test defined in it.
> Place skips at begin of test functions that need it.

Hi Kamil,

    That's why I created a subtest_group. Is that not sufficient?

Thanks,

Vinay.

>
> Regards,
> Kamil
>
>> +
>> +		igt_subtest("hang")
>> +			test_nohangcheck_hang(i915, &empty_cfg);
>> +
>> +		igt_subtest("heartbeat-stop")
>> +			test_noheartbeat_many(i915, 1, 0);
>> +		igt_subtest("heartbeat-hang")
>> +			test_noheartbeat_many(i915, 1, IGT_SPIN_NO_PREEMPTION);
>> +		igt_subtest("heartbeat-many")
>> +			test_noheartbeat_many(i915, 16, 0);
>> +		igt_subtest("heartbeat-close")
>> +			test_noheartbeat_close(i915, 0);
>> +		igt_subtest("heartbeat-hostile")
>> +			test_noheartbeat_close(i915, IGT_SPIN_NO_PREEMPTION);
>> +	}
>>   
>>   	igt_subtest_group {
>>   		igt_fixture
>> -- 
>> 2.38.1
>>
Andrzej Hajda June 1, 2023, 7:55 p.m. UTC | #3
On 24.05.2023 21:19, Vinay Belgaumkar wrote:
> Hang and heartbeat subtests are not supported with GuC submission
> enabled.
>
> Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
> ---
>   tests/i915/gem_ctx_persistence.c | 32 +++++++++++++++++++-------------
>   1 file changed, 19 insertions(+), 13 deletions(-)
>
> diff --git a/tests/i915/gem_ctx_persistence.c b/tests/i915/gem_ctx_persistence.c
> index 42cf96329..1e122535e 100644
> --- a/tests/i915/gem_ctx_persistence.c
> +++ b/tests/i915/gem_ctx_persistence.c
> @@ -1366,19 +1366,25 @@ igt_main
>   
>   	igt_subtest("hostile")
>   		test_nohangcheck_hostile(i915, &empty_cfg);
> -	igt_subtest("hang")
> -		test_nohangcheck_hang(i915, &empty_cfg);
> -
> -	igt_subtest("heartbeat-stop")
> -		test_noheartbeat_many(i915, 1, 0);
> -	igt_subtest("heartbeat-hang")
> -		test_noheartbeat_many(i915, 1, IGT_SPIN_NO_PREEMPTION);
> -	igt_subtest("heartbeat-many")
> -		test_noheartbeat_many(i915, 16, 0);
> -	igt_subtest("heartbeat-close")
> -		test_noheartbeat_close(i915, 0);
> -	igt_subtest("heartbeat-hostile")
> -		test_noheartbeat_close(i915, IGT_SPIN_NO_PREEMPTION);
> +
> +	igt_subtest_group {
> +		igt_fixture
> +			igt_skip_on(gem_using_guc_submission(i915));

As Kamil said this should be put into test function.
Otherwise you will have misleading errors in other tests - fixture will 
be called always regardless of running test.

> +
> +		igt_subtest("hang")
> +			test_nohangcheck_hang(i915, &empty_cfg);

What is 'missing' in GuC in case of this test? CI is happy :)


> +
> +		igt_subtest("heartbeat-stop")
> +			test_noheartbeat_many(i915, 1, 0);
> +		igt_subtest("heartbeat-hang")
> +			test_noheartbeat_many(i915, 1, IGT_SPIN_NO_PREEMPTION);
> +		igt_subtest("heartbeat-many")
> +			test_noheartbeat_many(i915, 16, 0);
> +		igt_subtest("heartbeat-close")
> +			test_noheartbeat_close(i915, 0);
> +		igt_subtest("heartbeat-hostile")
> +			test_noheartbeat_close(i915, IGT_SPIN_NO_PREEMPTION);

These tests are handled already by recently merged:
https://patchwork.freedesktop.org/patch/539647/?series=118423&rev=3

Regards
Andrzej


> +	}
>   
>   	igt_subtest_group {
>   		igt_fixture
Vinay Belgaumkar June 7, 2023, 2:55 a.m. UTC | #4
On 6/1/2023 12:55 PM, Andrzej Hajda wrote:
>
>
> On 24.05.2023 21:19, Vinay Belgaumkar wrote:
>> Hang and heartbeat subtests are not supported with GuC submission
>> enabled.
>>
>> Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
>> ---
>>   tests/i915/gem_ctx_persistence.c | 32 +++++++++++++++++++-------------
>>   1 file changed, 19 insertions(+), 13 deletions(-)
>>
>> diff --git a/tests/i915/gem_ctx_persistence.c 
>> b/tests/i915/gem_ctx_persistence.c
>> index 42cf96329..1e122535e 100644
>> --- a/tests/i915/gem_ctx_persistence.c
>> +++ b/tests/i915/gem_ctx_persistence.c
>> @@ -1366,19 +1366,25 @@ igt_main
>>         igt_subtest("hostile")
>>           test_nohangcheck_hostile(i915, &empty_cfg);
>> -    igt_subtest("hang")
>> -        test_nohangcheck_hang(i915, &empty_cfg);
>> -
>> -    igt_subtest("heartbeat-stop")
>> -        test_noheartbeat_many(i915, 1, 0);
>> -    igt_subtest("heartbeat-hang")
>> -        test_noheartbeat_many(i915, 1, IGT_SPIN_NO_PREEMPTION);
>> -    igt_subtest("heartbeat-many")
>> -        test_noheartbeat_many(i915, 16, 0);
>> -    igt_subtest("heartbeat-close")
>> -        test_noheartbeat_close(i915, 0);
>> -    igt_subtest("heartbeat-hostile")
>> -        test_noheartbeat_close(i915, IGT_SPIN_NO_PREEMPTION);
>> +
>> +    igt_subtest_group {
>> +        igt_fixture
>> +            igt_skip_on(gem_using_guc_submission(i915));
>
> As Kamil said this should be put into test function.
> Otherwise you will have misleading errors in other tests - fixture 
> will be called always regardless of running test.
>
>> +
>> +        igt_subtest("hang")
>> +            test_nohangcheck_hang(i915, &empty_cfg);
>
> What is 'missing' in GuC in case of this test? CI is happy :)

For now. I have seen this  fail before, so better to skip. I have sent 
out a patch with a skip for just this one since all others have been 
taken care of.

https://patchwork.freedesktop.org/patch/541407/

Thanks,

Vinay.

>
>
>> +
>> +        igt_subtest("heartbeat-stop")
>> +            test_noheartbeat_many(i915, 1, 0);
>> +        igt_subtest("heartbeat-hang")
>> +            test_noheartbeat_many(i915, 1, IGT_SPIN_NO_PREEMPTION);
>> +        igt_subtest("heartbeat-many")
>> +            test_noheartbeat_many(i915, 16, 0);
>> +        igt_subtest("heartbeat-close")
>> +            test_noheartbeat_close(i915, 0);
>> +        igt_subtest("heartbeat-hostile")
>> +            test_noheartbeat_close(i915, IGT_SPIN_NO_PREEMPTION);
>
> These tests are handled already by recently merged:
> https://patchwork.freedesktop.org/patch/539647/?series=118423&rev=3
>
> Regards
> Andrzej
>
>
>> +    }
>>         igt_subtest_group {
>>           igt_fixture
>
diff mbox series

Patch

diff --git a/tests/i915/gem_ctx_persistence.c b/tests/i915/gem_ctx_persistence.c
index 42cf96329..1e122535e 100644
--- a/tests/i915/gem_ctx_persistence.c
+++ b/tests/i915/gem_ctx_persistence.c
@@ -1366,19 +1366,25 @@  igt_main
 
 	igt_subtest("hostile")
 		test_nohangcheck_hostile(i915, &empty_cfg);
-	igt_subtest("hang")
-		test_nohangcheck_hang(i915, &empty_cfg);
-
-	igt_subtest("heartbeat-stop")
-		test_noheartbeat_many(i915, 1, 0);
-	igt_subtest("heartbeat-hang")
-		test_noheartbeat_many(i915, 1, IGT_SPIN_NO_PREEMPTION);
-	igt_subtest("heartbeat-many")
-		test_noheartbeat_many(i915, 16, 0);
-	igt_subtest("heartbeat-close")
-		test_noheartbeat_close(i915, 0);
-	igt_subtest("heartbeat-hostile")
-		test_noheartbeat_close(i915, IGT_SPIN_NO_PREEMPTION);
+
+	igt_subtest_group {
+		igt_fixture
+			igt_skip_on(gem_using_guc_submission(i915));
+
+		igt_subtest("hang")
+			test_nohangcheck_hang(i915, &empty_cfg);
+
+		igt_subtest("heartbeat-stop")
+			test_noheartbeat_many(i915, 1, 0);
+		igt_subtest("heartbeat-hang")
+			test_noheartbeat_many(i915, 1, IGT_SPIN_NO_PREEMPTION);
+		igt_subtest("heartbeat-many")
+			test_noheartbeat_many(i915, 16, 0);
+		igt_subtest("heartbeat-close")
+			test_noheartbeat_close(i915, 0);
+		igt_subtest("heartbeat-hostile")
+			test_noheartbeat_close(i915, IGT_SPIN_NO_PREEMPTION);
+	}
 
 	igt_subtest_group {
 		igt_fixture