[igt-dev] [i-g-t] tests/i915/exec_balancer: Added Skip Guc Submission

Katragadda, MastanX mastanx.katragadda at intel.com
Mon Nov 29 10:58:33 UTC 2021


Hi   Tvrtko Ursulin,
             Based on following backend information added skip on guc enabled platforms.    

basically there is a quirk in GuC scheduling where if a context reaches the head of the queue and can't be scheduled it blocks the rest of the queue. A queue is an engine class. So in this case if the user submits to VCS0, VCS0, then VCS1 and the first submission to VCS0 is spinner the VCS1 submission is blocked. This more or less is exactly what this test is doing, thus it hangs. We have a request with the GuC firmware team to be able to tweak this head of queue blocking behaviour but don't expect to land anytime soon. Also in the real world this isn't an issue as the user should always be using VEs which should never block the head of the queue unless all the engines within the class are busy.

Test is expected to fail with GuC submission, skip it in CI.

Regards,
Mastan

-----Original Message-----
From: Tvrtko Ursulin <tvrtko.ursulin at linux.intel.com> 
Sent: 29 November 2021 16:01
To: Katragadda, MastanX <mastanx.katragadda at intel.com>; igt-dev at lists.freedesktop.org; Surendrakumar Upadhyay, TejaskumarX <tejaskumarx.surendrakumar.upadhyay at intel.com>
Subject: Re: [igt-dev] [i-g-t] tests/i915/exec_balancer: Added Skip Guc Submission


On 26/11/2021 01:57, Mastan Katragadda wrote:
> This a known failure when running 
> igt at gem_exec_balancer@bonded-(dual|pair|sync)
> tests with GuC submission.The hang is expected with GuC submission 
> since the test was written to expect execlist scheduling hence added 
> skip if Guc submission enabled.

Looking at the test I don't see anything backend specific. Can you provide an explanation of how and why it hangs?

Regards,

Tvrtko

> Signed-off-by: Mastan Katragadda <mastanx.katragadda at intel.com>
> ---
>   tests/i915/gem_exec_balancer.c | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/tests/i915/gem_exec_balancer.c 
> b/tests/i915/gem_exec_balancer.c index cc07a5a9..d58734ab 100644
> --- a/tests/i915/gem_exec_balancer.c
> +++ b/tests/i915/gem_exec_balancer.c
> @@ -3320,6 +3320,7 @@ igt_main
>   
>   	igt_subtest_group {
>   		igt_fixture {
> +			igt_require(!gem_using_guc_submission(i915));
>   			intel_allocator_multiprocess_start();
>   		}
>   
> 


More information about the igt-dev mailing list