On Tue, 2025-12-02 at 17:23 -0800, Matthew Brost wrote: > 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.
Fellow maintainer Matt, it seems that none of us has ever been on Cc for this series or patch? I can't find it in my inbox. Did you forget to add us for 7 revisions, or did you omit us on purpose? I look occasionally at dri-devel, but you know how huge the list is. P. > > 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 > >
