[PULL] drm-xe-fixes

Lucas De Marchi
2025-05-15T15:04:24Z

Hi Dave and Sima.

Here's the drm-xe-fixes for 6.15-rc7.

We had quite a few more changes than usual due to 2 fixes that were
being worked on for a few weeks: 1) engine utilization and 2) mixing cpu
and gpu atomics. Those 2 required some refactors to get them right.

Other than that, fixes are very simple.

Summary:

drm-xe-fixes-2025-05-15-1:
Core Changes:
- Add timeslicing and allocation restriction for SVM

Driver Changes:
- Fix shrinker debugfs name
- Add HW workaround to Xe2
- Fix SVM when mixing GPU and CPU atomics
- Fix per client engine utilization due to active contexts
not saving timestamp with lite restore enabled.

Thanks,
Lucas De Marchi

The following changes since commit 82f2b0b97b36ee3fcddf0f0780a9a0825d52fec3:

Linux 6.15-rc6 (2025-05-11 14:54:11 -0700)

are available in the Git repository at:

https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-fixes-2025-05-15-1

for you to fetch changes up to 617d824c5323b8474b3665ae6c410c98b839e0b0:

drm/xe: Add WA BB to capture active context utilization (2025-05-14 09:03:29 -0700)

----------------------------------------------------------------
Core Changes:
- Add timeslicing and allocation restriction for SVM

Driver Changes:
- Fix shrinker debugfs name
- Add HW workaround to Xe2
- Fix SVM when mixing GPU and CPU atomics
- Fix per client engine utilization due to active contexts
not saving timestamp with lite restore enabled.

----------------------------------------------------------------
Aradhya Bhatia (1):
drm/xe/xe2hpg: Add Wa_22021007897

Himal Prasad Ghimiray (1):
drm/gpusvm: Introduce devmem_only flag for allocation

Matthew Brost (3):
drm/xe: Strict migration policy for atomic SVM faults
drm/gpusvm: Add timeslicing support to GPU SVM
drm/xe: Timeslice GPU on atomic SVM fault

Thomas Hellström (1):
drm/xe: Fix the gem shrinker name

Umesh Nerlige Ramappa (3):
drm/xe: Save CTX_TIMESTAMP mmio value instead of LRC value
drm/xe: Save the gt pointer in lrc and drop the tile
drm/xe: Add WA BB to capture active context utilization

drivers/gpu/drm/drm_gpusvm.c | 37 ++++-
drivers/gpu/drm/xe/instructions/xe_mi_commands.h | 4 +
drivers/gpu/drm/xe/regs/xe_engine_regs.h | 5 +
drivers/gpu/drm/xe/regs/xe_gt_regs.h | 1 +
drivers/gpu/drm/xe/regs/xe_lrc_layout.h | 2 +
drivers/gpu/drm/xe/xe_device_types.h | 2 +
drivers/gpu/drm/xe/xe_exec_queue.c | 2 +-
drivers/gpu/drm/xe/xe_guc_submit.c | 2 +-
drivers/gpu/drm/xe/xe_lrc.c | 199 +++++++++++++++++++++--
drivers/gpu/drm/xe/xe_lrc.h | 5 +-
drivers/gpu/drm/xe/xe_lrc_types.h | 9 +-
drivers/gpu/drm/xe/xe_module.c | 3 -
drivers/gpu/drm/xe/xe_module.h | 1 -
drivers/gpu/drm/xe/xe_pci.c | 2 +
drivers/gpu/drm/xe/xe_pci_types.h | 1 +
drivers/gpu/drm/xe/xe_pt.c | 14 +-
drivers/gpu/drm/xe/xe_ring_ops.c | 7 +-
drivers/gpu/drm/xe/xe_shrinker.c | 2 +-
drivers/gpu/drm/xe/xe_svm.c | 116 ++++++++++---
drivers/gpu/drm/xe/xe_svm.h | 5 -
drivers/gpu/drm/xe/xe_trace_lrc.h | 8 +-
drivers/gpu/drm/xe/xe_wa.c | 4 +
include/drm/drm_gpusvm.h | 47 ++++--
23 files changed, 391 insertions(+), 87 deletions(-)