[PATCH i-g-t 2/2] benchmarks/gem_wsim: re-arm ticks_delta before batch submission
Marcin Bernatowicz <[email protected]> Tue, 28 Jul 2026 12:26:59 +0200
| Newsgroups | org.freedesktop.lists.igt-dev |
|---|---|
| Message-ID | <[email protected]> |
Write ~0u to ticks_delta for fixed-duration batches before submit. ~0u is a safe value for potential stale cache data from previous batches. Fixes observed verification failure under looped runs: gem_wsim -w "1.RCS.5000.0.0,1.BCS.5000.0.0,1.CCS.5000.0.1,1.VCS.5000.0.0" -V -r 4000 CRITICAL: Failed assertion: w->duration.requested_ticks <= ~w->xe.data->spin.ticks_delta CRITICAL: error: 96000 > 2 Signed-off-by: Marcin Bernatowicz <[email protected]> Cc: Adam Miszczak <[email protected]> Cc: Kamil Konieczny <[email protected]> Cc: Lukasz Laguna <[email protected]> --- benchmarks/gem_wsim.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/benchmarks/gem_wsim.c b/benchmarks/gem_wsim.c index 8be44d0c8..a66fd07d4 100644 --- a/benchmarks/gem_wsim.c +++ b/benchmarks/gem_wsim.c @@ -2663,7 +2663,11 @@ static void do_xe_exec(struct workload *wrk, struct w_step *w) .addr = w->xe.exec.address, .preempt = (w->preempt_us > 0), .ctx_ticks = w->duration.requested_ticks); + } else if (!w->duration.unbound) { + /* Reset sentinel for fixed-duration to prevent stale reads */ + w->xe.data->spin.ticks_delta = ~0u; } + xe_exec(fd, &w->xe.exec); } -- 2.43.0