On Mon, Dec 01, 2025 at 10:39:45AM -0800, Matthew Brost wrote:

Fellow DRM sched maintainers - going to merge the first two patches in
this series to drm-misc-next two days from now unless I hear an
objection.

Matt 

> At XDC, we discussed that drivers should avoid accessing DRM scheduler
> internals, misusing DRM scheduler locks, and adopt a well-defined
> pending job list iterator. This series proposes the necessary changes to
> the DRM scheduler to bring Xe in line with that agreement and updates Xe
> to use the new DRM scheduler API.
> 
> While here, cleanup LR queue handling and simplify GuC state machine in
> Xe too. Also rework LRC timestamp sampling to avoid scheduling toggle.
> 
> v2:
>  - Fix checkpatch / naming issues
> v3:
>  - Only allow pending job list iterator to be called on stopped schedulers
>  - Cleanup LR queue handling / fix a few misselanous Xe scheduler issues
> v4:
>  - Address Niranjana's feedback
>  - Add patch to avoid toggling scheduler state in the TDR
> v5:
>  - Rebase
>  - Fixup LRC timeout check (Umesh)
> v6:
>  - Fix VF bugs (Testing)
> v7:
>  - Disable timestamp WA on VF
> 
> Matt
> 
> Matthew Brost (9):
>   drm/sched: Add several job helpers to avoid drivers touching scheduler
>     state
>   drm/sched: Add pending job list iterator
>   drm/xe: Add dedicated message lock
>   drm/xe: Stop abusing DRM scheduler internals
>   drm/xe: Only toggle scheduling in TDR if GuC is running
>   drm/xe: Do not deregister queues in TDR
>   drm/xe: Remove special casing for LR queues in submission
>   drm/xe: Disable timestamp WA on VFs
>   drm/xe: Avoid toggling schedule state to check LRC timestamp in TDR
> 
>  drivers/gpu/drm/scheduler/sched_main.c       |   4 +-
>  drivers/gpu/drm/xe/xe_gpu_scheduler.c        |   9 +-
>  drivers/gpu/drm/xe/xe_gpu_scheduler.h        |  37 +-
>  drivers/gpu/drm/xe/xe_gpu_scheduler_types.h  |   2 +
>  drivers/gpu/drm/xe/xe_guc_exec_queue_types.h |   2 -
>  drivers/gpu/drm/xe/xe_guc_submit.c           | 362 +++----------------
>  drivers/gpu/drm/xe/xe_guc_submit_types.h     |  11 -
>  drivers/gpu/drm/xe/xe_hw_fence.c             |  16 -
>  drivers/gpu/drm/xe/xe_hw_fence.h             |   2 -
>  drivers/gpu/drm/xe/xe_lrc.c                  |  45 ++-
>  drivers/gpu/drm/xe/xe_lrc.h                  |   3 +-
>  drivers/gpu/drm/xe/xe_ring_ops.c             |  25 +-
>  drivers/gpu/drm/xe/xe_sched_job.c            |   1 +
>  drivers/gpu/drm/xe/xe_sched_job_types.h      |   2 +
>  drivers/gpu/drm/xe/xe_trace.h                |   5 -
>  include/drm/gpu_scheduler.h                  |  82 +++++
>  16 files changed, 211 insertions(+), 397 deletions(-)
> 
> -- 
> 2.34.1
> 

Reply via email to