Skip to content

Commit 1b30f87

Browse files
mbrost05lucasdemarchi
authored andcommitted
drm/xe: Resume TDR after GT reset
Not starting the TDR after GT reset on exec queue which have been restarted can lead to jobs being able to be run forever. Fix this by restarting the TDR. Fixes: dd08ebf ("drm/xe: Introduce a new DRM driver for Intel GPUs") Signed-off-by: Matthew Brost <[email protected]> Reviewed-by: Nirmoy Das <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected] (cherry picked from commit 8ec5a4e) Signed-off-by: Lucas De Marchi <[email protected]>
1 parent 6ef5a04 commit 1b30f87

File tree

3 files changed

+8
-0
lines changed

3 files changed

+8
-0
lines changed

drivers/gpu/drm/xe/xe_gpu_scheduler.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,11 @@ void xe_sched_submission_stop(struct xe_gpu_scheduler *sched)
9090
cancel_work_sync(&sched->work_process_msg);
9191
}
9292

93+
void xe_sched_submission_resume_tdr(struct xe_gpu_scheduler *sched)
94+
{
95+
drm_sched_resume_timeout(&sched->base, sched->base.timeout);
96+
}
97+
9398
void xe_sched_add_msg(struct xe_gpu_scheduler *sched,
9499
struct xe_sched_msg *msg)
95100
{

drivers/gpu/drm/xe/xe_gpu_scheduler.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ void xe_sched_fini(struct xe_gpu_scheduler *sched);
2222
void xe_sched_submission_start(struct xe_gpu_scheduler *sched);
2323
void xe_sched_submission_stop(struct xe_gpu_scheduler *sched);
2424

25+
void xe_sched_submission_resume_tdr(struct xe_gpu_scheduler *sched);
26+
2527
void xe_sched_add_msg(struct xe_gpu_scheduler *sched,
2628
struct xe_sched_msg *msg);
2729
void xe_sched_add_msg_locked(struct xe_gpu_scheduler *sched,

drivers/gpu/drm/xe/xe_guc_submit.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1826,6 +1826,7 @@ static void guc_exec_queue_start(struct xe_exec_queue *q)
18261826
}
18271827

18281828
xe_sched_submission_start(sched);
1829+
xe_sched_submission_resume_tdr(sched);
18291830
}
18301831

18311832
int xe_guc_submit_start(struct xe_guc *guc)

0 commit comments

Comments
 (0)