[igt-dev] [PATCH i-g-t] tests/i915/gem_exec_balancer: Skip the test if no engines are available

Antonio Argenziano antonio.argenziano at intel.com
Mon Feb 10 20:45:53 UTC 2020



On 10/02/20 12:43, Chris Wilson wrote:
> Quoting Antonio Argenziano (2020-02-10 20:41:25)
>>
>>
>> On 10/02/20 12:28, Chris Wilson wrote:
>>> Quoting Antonio Argenziano (2020-02-10 19:39:08)
>>>> The test needs to have at least some engines to run, if no engines are
>>>> present flag it as a skip rather than have a pass. This patch also fixes
>>>> the error check for perf_i915_open().
>>>>
>>>> Signed-off-by: Antonio Argenziano <antonio.argenziano at intel.com>
>>>>
>>>> Cc: Chris Wilson <chris at chris-wilson.co.uk>
>>>> Cc: Tvrtko Ursulin <tvrtko.ursulin at linux.intel.com>
>>>> ---
>>>>    tests/i915/gem_exec_balancer.c | 20 +++++++++++++++++++-
>>>>    1 file changed, 19 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/tests/i915/gem_exec_balancer.c b/tests/i915/gem_exec_balancer.c
>>>> index 150eba0d..df816feb 100644
>>>> --- a/tests/i915/gem_exec_balancer.c
>>>> +++ b/tests/i915/gem_exec_balancer.c
>>>> @@ -61,7 +61,7 @@ static bool has_class_instance(int i915, uint16_t class, uint16_t instance)
>>>>           int fd;
>>>>    
>>>>           fd = perf_i915_open(i915, I915_PMU_ENGINE_BUSY(class, instance));
>>>> -       if (fd != -1) {
>>>> +       if (fd >= 0) {
>>>>                   close(fd);
>>>>                   return true;
>>>>           }
>>>> @@ -113,6 +113,23 @@ list_engines(int i915, uint32_t class_mask, unsigned int *out)
>>>>           return engines;
>>>>    }
>>>>    
>>>> +static bool has_engines(int i915)
>>>> +{
>>>
>>> igt_require(igt_i915_perf_type(i915)); /* or whatever it was called */ ?
>>
>> Keep it in the fixture?
> 
> Preference would be something like
> 
> static bool has_perf_engines(int i915)
> {
> 	return igt_i915_perf_type(i915));
> }
> 
> igt_fixture:
> 	igt_require(has_perf_engines(i915));

Agreed, it makes the require more readable.

Antonio

> -Chris
> 


More information about the igt-dev mailing list