[PATCH i-g-t] tests/xe_eudebug_online: Ignore stale attention events during single-step
Dominik Grzegorzek
dominik.grzegorzek at intel.com
Thu Feb 6 13:14:55 UTC 2025
Signle step testcases are not filtering stale attention events in
resume trigger, as a result those expect fixed number of attention
events to come. If for some reason attention wasn't handeled before the
next one came test would fail. Filter out all atentions with seqno
lower than last eu control call.
Signed-off-by: Dominik Grzegorzek <dominik.grzegorzek at intel.com>
---
tests/intel/xe_eudebug_online.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/tests/intel/xe_eudebug_online.c b/tests/intel/xe_eudebug_online.c
index ecc32ee97..c98f1ef1f 100644
--- a/tests/intel/xe_eudebug_online.c
+++ b/tests/intel/xe_eudebug_online.c
@@ -694,6 +694,9 @@ static void eu_attention_resume_single_step_trigger(struct xe_eudebug_debugger *
get_aips_offset_table(data, threads);
+ if (data->last_eu_control_seqno > att->base.seqno)
+ return;
+
if (d->flags & TRIGGER_RESUME_PARALLEL_WALK) {
if (data->stepped_threads_count != -1)
if (data->steps_done < SINGLE_STEP_COUNT) {
@@ -766,9 +769,9 @@ static void eu_attention_resume_single_step_trigger(struct xe_eudebug_debugger *
data->target_offset + steering_offset(threads)), sz);
fsync(data->vm_fd);
- eu_ctl_resume(d->master_fd, d->fd, att->client_handle,
- att->exec_queue_handle, att->lrc_handle,
- att->bitmask, att->bitmask_size);
+ data->last_eu_control_seqno = eu_ctl_resume(d->master_fd, d->fd, att->client_handle,
+ att->exec_queue_handle, att->lrc_handle,
+ att->bitmask, att->bitmask_size);
if (data->single_step_bitmask)
for (int i = 0; i < att->bitmask_size; i++)
--
2.34.1
More information about the igt-dev
mailing list