[igt-dev] [PATCH v2 i-g-t] i915/gem_exec_balancer: fix parallel_ordering with no-reloc

Nirmoy Das nirmoy.das at intel.com
Fri Jun 10 10:54:57 UTC 2022


Make sure to allocate ahnd so that spinner starts with no-reloc
execbuf otherwise this will fail on platforms with relocation disabled.

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/6117
Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
Signed-off-by: Nirmoy Das <nirmoy.das at intel.com>
---
 tests/i915/gem_exec_balancer.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/tests/i915/gem_exec_balancer.c b/tests/i915/gem_exec_balancer.c
index 186975c46..6e6bf4704 100644
--- a/tests/i915/gem_exec_balancer.c
+++ b/tests/i915/gem_exec_balancer.c
@@ -3108,6 +3108,7 @@ static void parallel_ordering(int i915, unsigned int flags)
 		unsigned int count;
 		int i = 0, fence = 0;
 		uint32_t batch[16];
+		uint64_t ahnd;
 		struct drm_i915_gem_execbuffer2 execbuf;
 		struct drm_i915_gem_exec_object2 obj[32];
 		igt_spin_t *spin;
@@ -3162,7 +3163,9 @@ static void parallel_ordering(int i915, unsigned int flags)
 
 		/* Block parallel submission */
 		spin_ctx = ctx_create_engines(i915, siblings, count);
+		ahnd = get_simple_ahnd(i915, spin_ctx->id);
 		spin = __igt_spin_new(i915,
+				      .ahnd = ahnd,
 				      .ctx = spin_ctx,
 				      .engine = 0,
 				      .flags = IGT_SPIN_FENCE_OUT |
@@ -3204,6 +3207,7 @@ static void parallel_ordering(int i915, unsigned int flags)
 			gem_close(i915, obj[i].handle);
 		free(siblings);
 		igt_spin_free(i915, spin);
+		put_ahnd(ahnd);
 	}
 }
 
-- 
2.35.1



More information about the igt-dev mailing list