[igt-dev] [PATCH] [PATCH i-g-t]tests/i915/gem_exec_create: Added __for_each_physical_engine to utilize all available engines.
Tvrtko Ursulin
tvrtko.ursulin at linux.intel.com
Fri Mar 6 14:07:24 UTC 2020
On 06/03/2020 11:22, Andi Shyti wrote:
> Hi Tvrtko,
>
>>> After fork we need to transfer the engine map from parent fd default
>>> context. (gem_context_copy_engines)
>>>
>>> Also, since we have __for_each_physical_engine in the top level
>>> igt_fixture, I think _all_ subtests run with default ctx engine map. So
>>> all which submit to one from either all_engines or ppgtt_engines need to
>>> make sure engine maps are aligned.
>>>
>>> it was suggested by tvrtko in one of the patch: https://patchwork.freedesktop.org/patch/351622/?series=72889&rev=1
>>
>> I was sadly wrong there, it is not required to reopen and copy engines after
>> fork. So __for_each_physical_engine should do it in this case.
>>
>> Regards,
>>
>> Tvrtko
>>
>> P.S. You could also dynamically size (allocate) the engines array while at
>> it to be more in line with the other recent cleanups.
>>
>> Hm.. actually, do we even need the array? Andi, __for_each_physical_engine
>> will always create engine map with consecutive e->flags integers, right?
>> There can be no holes?
>
> yes, you are right, we do not need in this case the array and
> there shouldn't be holes, indeed.
Then the question is whether it is a good idea to rely on this from
tests or not? I can't imagine a scenario where IGT couldn't create a map
with no holes but maybe my imagination is bad.
Regards,
Tvrtko
More information about the igt-dev
mailing list