Hi Chris,
On Sat, Dec 07, 2019 at 01:08:35AM +0000, Chris Wilson wrote:
> This reverts commit 343aae776a58a67fa153825385e6fe90e3185c5b.
>
> __for_each_physical_engine() reprograms the context, invalidating the
> use of e->flags to select engines, necessitating e->index instead.
> Withot also fixing up the engine selection, the result is that random
> engines were being used to read registers from the intended engine.
> This does not end well.
So, the problem here is that with __for_each_physical_engine() we
"reprogram the context" which means that there is a re-mapping of
engines in it. Have I understood correctly?
Doesn't that happen only in the case when the context has no
engines in it?
> @@ -877,7 +876,8 @@ igt_main
> igt_skip_on(gen > LAST_KNOWN_GEN);
> }
>
> - __for_each_physical_engine(fd, e) {
> + for (const struct intel_execution_engine2 *e = intel_execution_engines2;
> + e->name; e++) {
__for_each_static_engine() ?
Andi
_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx