History

drm/amdgpu: revert "implement tdr advanced mode"

This reverts commit e6c6338f393b74ac0b303d567bb918b44ae7ad75. This feature basically re-submits one job after another to figure out which one was the one causing a hang. This is obviously incompatible with gang-submit which requires that multiple jobs run at the same time. It's also absolutely not helpful to crash the hardware multiple times if a clean recovery is desired. For testing and debugging environments we should rather disable recovery alltogether to be able to inspect the state with a hw debugger. Additional to that the sw implementation is clearly buggy and causes reference count issues for the hardware fence.

Christian König committed 4 years ago

Commit 06a2d7c1 parent d27252b4 files · +10 −156Browse files

Showing the changes to include/drm (1 of 4 files). Show all

Unified · Split

include/drm/gpu_scheduler.h+0−3
@@ -528,10 +528,7 @@ void drm_sched_wakeup(struct drm_gpu_scheduler *sched); · 527 unmodified lines
528void drm_sched_stop(struct drm_gpu_scheduler *sched, struct drm_sched_job *bad);528void drm_sched_stop(struct drm_gpu_scheduler *sched, struct drm_sched_job *bad);
529void drm_sched_start(struct drm_gpu_scheduler *sched, bool full_recovery);529void drm_sched_start(struct drm_gpu_scheduler *sched, bool full_recovery);
530void drm_sched_resubmit_jobs(struct drm_gpu_scheduler *sched);530void drm_sched_resubmit_jobs(struct drm_gpu_scheduler *sched);
531void drm_sched_resubmit_jobs_ext(struct drm_gpu_scheduler *sched, int max);
532void drm_sched_increase_karma(struct drm_sched_job *bad);531void drm_sched_increase_karma(struct drm_sched_job *bad);
533void drm_sched_reset_karma(struct drm_sched_job *bad);
534void drm_sched_increase_karma_ext(struct drm_sched_job *bad, int type);
535bool drm_sched_dependency_optimized(struct dma_fence* fence,532bool drm_sched_dependency_optimized(struct dma_fence* fence,
536 struct drm_sched_entity *entity);533 struct drm_sched_entity *entity);
537void drm_sched_fault(struct drm_gpu_scheduler *sched);534void drm_sched_fault(struct drm_gpu_scheduler *sched);