On 07/12/2019 01:08, 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.
Argh, an oversight.. test(s) needs to be looked at in detail and
converted fully. On a cursory glance a sprinkle of
gem_context_set_all_engines on internally created contexts is needed to
align with the passed in e and e->flags.
Acked-by: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx>
Regards,
Tvrtko
Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
Cc: Stuart Summers <stuart.summers@xxxxxxxxx>
Cc: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx>
---
tests/i915/gem_ctx_isolation.c | 4 ++--
tests/i915/gem_ctx_persistence.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/tests/i915/gem_ctx_isolation.c b/tests/i915/gem_ctx_isolation.c
index 9435209e9..6aa27133c 100644
--- a/tests/i915/gem_ctx_isolation.c
+++ b/tests/i915/gem_ctx_isolation.c
@@ -856,7 +856,6 @@ static unsigned int __has_context_isolation(int fd)
igt_main
{
- struct intel_execution_engine2 *e;
unsigned int has_context_isolation = 0;
int fd = -1;
@@ -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++) {
igt_subtest_group {
igt_fixture {
igt_require(has_context_isolation & (1 << e->class));
diff --git a/tests/i915/gem_ctx_persistence.c b/tests/i915/gem_ctx_persistence.c
index 30772159b..d68431ae0 100644
--- a/tests/i915/gem_ctx_persistence.c
+++ b/tests/i915/gem_ctx_persistence.c
@@ -727,7 +727,7 @@ igt_main
igt_subtest("hangcheck")
test_nohangcheck_hostile(i915);
- __for_each_physical_engine(i915, e) {
+ __for_each_static_engine(e) {
igt_subtest_group {
igt_fixture {
gem_require_ring(i915, e->flags);
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx