public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
* [i-g-t] tests/intel/xe_ccs: split block-multicopy into 3 submissions
@ 2026-01-07 19:43 Jagmeet Randhawa
  2026-01-07 21:18 ` ✓ i915.CI.BAT: success for " Patchwork
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: Jagmeet Randhawa @ 2026-01-07 19:43 UTC (permalink / raw)
  Cc: igt-dev, jonathan.cavitt, matthew.d.roper, Jagmeet Randhawa

Split the block multicopy test into separate batch buffer
submissions. Submitting multiple block copies within a
single submission can  result in incorrect ordering between
stages. Run each copy as it's own submission then wait for
completion between stages to ensure proper sequencing
to prevent the read-after-write hazards.

Signed-off-by: Jagmeet Randhawa <jagmeet.randhawa@intel.com>
---
 tests/intel/xe_ccs.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/tests/intel/xe_ccs.c b/tests/intel/xe_ccs.c
index a21922ee5..33dde0c1f 100644
--- a/tests/intel/xe_ccs.c
+++ b/tests/intel/xe_ccs.c
@@ -281,8 +281,6 @@ static int blt_block_copy3(int xe,
 	struct blt_copy_data blt0;
 	struct blt_block_copy_data_ext ext0;
 	uint64_t bb_offset, alignment;
-	uint64_t bb_pos = 0;
-	int ret;
 
 	igt_assert_f(ahnd, "block-copy3 supports softpin only\n");
 	igt_assert_f(blt3, "block-copy3 requires data to do blit\n");
@@ -303,7 +301,9 @@ static int blt_block_copy3(int xe,
 	blt0.print_bb = blt3->print_bb;
 	ext0.src = ext3->src;
 	ext0.dst = ext3->mid;
-	bb_pos = emit_blt_block_copy(xe, ahnd, &blt0, &ext0, bb_pos, false);
+	emit_blt_block_copy(xe, ahnd, &blt0, &ext0, 0, true);
+	intel_ctx_xe_exec(ctx, ahnd, bb_offset);
+	intel_ctx_xe_sync((intel_ctx_t *)ctx, true);
 
 	/* Second blit mid -> dst */
 	blt_copy_init(xe, &blt0);
@@ -314,7 +314,9 @@ static int blt_block_copy3(int xe,
 	blt0.print_bb = blt3->print_bb;
 	ext0.src = ext3->mid;
 	ext0.dst = ext3->dst;
-	bb_pos = emit_blt_block_copy(xe, ahnd, &blt0, &ext0, bb_pos, false);
+	emit_blt_block_copy(xe, ahnd, &blt0, &ext0, 0, true);
+	intel_ctx_xe_exec(ctx, ahnd, bb_offset);
+	intel_ctx_xe_sync((intel_ctx_t *)ctx, true);
 
 	/* Third blit dst -> final */
 	blt_copy_init(xe, &blt0);
@@ -325,11 +327,11 @@ static int blt_block_copy3(int xe,
 	blt0.print_bb = blt3->print_bb;
 	ext0.src = ext3->dst;
 	ext0.dst = ext3->final;
-	bb_pos = emit_blt_block_copy(xe, ahnd, &blt0, &ext0, bb_pos, true);
+	emit_blt_block_copy(xe, ahnd, &blt0, &ext0, 0, true);
 
 	intel_ctx_xe_exec(ctx, ahnd, bb_offset);
 
-	return ret;
+	return 0;
 }
 
 #define CHECK_MIN_WIDTH 2
-- 
2.52.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2026-01-08 19:01 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-07 19:43 [i-g-t] tests/intel/xe_ccs: split block-multicopy into 3 submissions Jagmeet Randhawa
2026-01-07 21:18 ` ✓ i915.CI.BAT: success for " Patchwork
2026-01-07 21:18 ` ✓ Xe.CI.BAT: " Patchwork
2026-01-07 22:46 ` [i-g-t] " Cavitt, Jonathan
2026-01-07 23:30 ` Matt Roper
2026-01-08 19:01   ` Randhawa, Jagmeet
2026-01-08  0:00 ` ✗ Xe.CI.Full: failure for " Patchwork
2026-01-08  2:09 ` ✗ i915.CI.Full: " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox