Re: [PULL] drm-xe-next

Dave Airlie
2025-11-17T20:56:54Z

On Fri, 14 Nov 2025 at 20:50, Thomas Hellstrom
<thomas.hellstrom@linux.intel.com> wrote:
>
> Hi Dave, Simona
>
> This is the last feature drm-xe-next PR towards 6.19.
>
> Note that the PR of 25-11-05 was never pulled, so this one
> incorporates that one as well. Please let me know if you want
> this done another way.

Just for future reference, just let me know I've missed one in the
next one, and treat them as separate, as I'll just go back and do them
in order.

This is fine this time, I just edited out the overlap from the commit msg.

Dave.

>
> Thanks,
> Thomas
>
> drm-xe-next-2025-11-14:
> UAPI Changes:
>
> Limit number of jobs per exec queue (Shuicheng)
> Add sriov_admin sysfs tree (Michal)
>
> Driver Changes:
>
> Fix an uninitialized value (Thomas)
> Expose a residency counter through debugfs (Mohammed Thasleem)
> Workaround enabling and improvement (Tapani, Tangudu)
> More Crescent Island-specific support (Sk Anirban, Lucas)
> PAT entry dump improvement (Xin)
> Inline gt_reset in the worker (Lucas)
> Synchronize GT reset with device unbind (Balasubramani)
> Do clean shutdown also when using flr (Jouni)
> Fix serialization on burst of unbinds (Matt Brost)
> Pagefault Refactor (Matt Brost)
> Remove some unused code (Gwan-gyeong)
> Avoid TOCTOU when montoring throttle reasons (Lucas)
> Add/extend workaround (Nitin)
> SRIOV migration work / plumbing (Michal Wajdeczko, Michal Winiarski, Lukasz)
> Drop debug flag requirement for VF resource fixup
> Fix MTL vm_max_level (Rodrigo)
> Changes around TILE_ADDR_RANGE for platform compatibility
> (Fei, Lucas)
> Add runtime registers for GFX ver >= 35 (Piotr)
> Kerneldoc fix (Kriish)
> Rework pcode error mapping (Lucas)
> Allow lockdown the PF (Michal)
> Eliminate GUC code caching of some frequency values (Sk)
> Improvements around forcewake referencing (Matt Roper)
> The following changes since commit 4504e780689245f01bee6ee4c19c74051bd87593:
>
> drm/xe/pf: Access VF's register using dedicated MMIO view (2025-10-27 17:22:18 +0100)
>
> are available in the Git repository at:
>
> https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-next-2025-11-14
>
> for you to fetch changes up to 6bcb180f6f4585554cefbe8c412aa8879b15f07a:
>
> drm/xe/oa: Store forcewake reference in stream structure (2025-11-13 14:05:51 -0800)
>
> ----------------------------------------------------------------
> UAPI Changes:
>
> Limit number of jobs per exec queue (Shuicheng)
> Add sriov_admin sysfs tree (Michal)
>
> Driver Changes:
>
> Fix an uninitialized value (Thomas)
> Expose a residency counter through debugfs (Mohammed Thasleem)
> Workaround enabling and improvement (Tapani, Tangudu)
> More Crescent Island-specific support (Sk Anirban, Lucas)
> PAT entry dump improvement (Xin)
> Inline gt_reset in the worker (Lucas)
> Synchronize GT reset with device unbind (Balasubramani)
> Do clean shutdown also when using flr (Jouni)
> Fix serialization on burst of unbinds (Matt Brost)
> Pagefault Refactor (Matt Brost)
> Remove some unused code (Gwan-gyeong)
> Avoid TOCTOU when montoring throttle reasons (Lucas)
> Add/extend workaround (Nitin)
> SRIOV migration work / plumbing (Michal Wajdeczko, Michal Winiarski, Lukasz)
> Drop debug flag requirement for VF resource fixup
> Fix MTL vm_max_level (Rodrigo)
> Changes around TILE_ADDR_RANGE for platform compatibility
> (Fei, Lucas)
> Add runtime registers for GFX ver >= 35 (Piotr)
> Kerneldoc fix (Kriish)
> Rework pcode error mapping (Lucas)
> Allow lockdown the PF (Michal)
> Eliminate GUC code caching of some frequency values (Sk)
> Improvements around forcewake referencing (Matt Roper)
>
> ----------------------------------------------------------------
> Balasubramani Vivekanandan (2):
> drm/xe/gt: Synchronize GT reset with device unbind
> drm/xe/guc: Synchronize Dead CT worker with unbind
>
> Fei Yang (1):
> drm/xe: Use SG_TILE_ADDR_RANGE instead of TILE_ADDR_RANGE
>
> Gwan-gyeong Mun (1):
> drm/xe: Remove never used code in xe_vm_create()
>
> Jouni Högander (1):
> drm/xe: Do clean shutdown also when using flr
>
> Kriish Sharma (1):
> drm/xe: fix kernel-doc function name mismatch in xe_pm.c
>
> Lucas De Marchi (10):
> drm/xe/gt_throttle: Tidy up perf reasons reading
> drm/xe/gt_throttle: Always read and mask
> drm/xe/gt_throttle: Add throttle_to_gt()
> drm/xe/gt_throttle: Tidy up attribute definition
> drm/xe: Improve freq and throttle documentation
> drm/xe/gt_throttle: Drop individual show functions
> drm/xe: Inline gt_reset in the worker
> drm/xe/gt_throttle: Avoid TOCTOU when monitoring reasons
> drm/xe/vram: Move forcewake down to get_flat_ccs_offset()
> drm/xe/pcode: Rework error mapping
>
> Lukasz Laguna (2):
> drm/xe/pf: Add helper to retrieve VF's LMEM object
> drm/xe/migrate: Add function to copy of VRAM data in chunks
>
> Matt Roper (3):
> drm/xe/forcewake: Improve kerneldoc
> drm/xe/eustall: Store forcewake reference in stream structure
> drm/xe/oa: Store forcewake reference in stream structure
>
> Matthew Brost (13):
> drm/xe: Enforce correct user fence signaling order using
> drm/xe: Attach last fence to TLB invalidation job queues
> drm/xe: Decouple bind queue last fence from TLB invalidations
> drm/xe: Skip TLB invalidation waits in page fault binds
> drm/xe: Disallow input fences on zero batch execs and zero binds
> drm/xe: Remove last fence dependency check from binds and execs
> drm/xe: Stub out new pagefault layer
> drm/xe: Implement xe_pagefault_init
> drm/xe: Implement xe_pagefault_reset
> drm/xe: Implement xe_pagefault_handler
> drm/xe: Implement xe_pagefault_queue_work
> drm/xe: Add xe_guc_pagefault layer
> drm/xe: Remove unused GT page fault code
>
> Michal Wajdeczko (22):
> drm/xe/pf: Prepare sysfs for SR-IOV admin attributes
> drm/xe/pf: Take RPM during calls to SR-IOV attr.store()
> drm/xe/pf: Add _locked variants of the VF EQ config functions
> drm/xe/pf: Add _locked variants of the VF PT config functions
> drm/xe/pf: Allow change PF and VFs EQ/PT using sysfs
> drm/xe/pf: Relax report helper to accept PF in bulk configs
> drm/xe/pf: Fix signature of internal config helpers
> drm/xe/pf: Add functions to bulk configure EQ/PT on GT
> drm/xe/pf: Add functions to bulk provision EQ/PT
> drm/xe/pf: Allow bulk change all VFs EQ/PT using sysfs
> drm/xe/pf: Add functions to provision scheduling priority
> drm/xe/pf: Allow bulk change all VFs priority using sysfs
> drm/xe/pf: Allow change PF scheduling priority using sysfs
> drm/xe/pf: Promote xe_pci_sriov_get_vf_pdev
> drm/xe/pf: Add sysfs device symlinks to enabled VFs
> drm/xe/pf: Allow to stop the VF using sysfs
> drm/xe/pf: Add documentation for sriov_admin attributes
> drm/xe/pf: Use migration-friendly context IDs auto-provisioning
> drm/xe/pf: Use migration-friendly doorbells auto-provisioning
> drm/xe/tests: Add KUnit tests for PF fair provisioning
> drm/xe/pf: Allow to lockdown the PF using custom guard
> drm/xe/pf: Use migration-friendly GGTT auto-provisioning
>
> Michał Winiarski (23):
> drm/xe/vf: Enable VF resource fixup unconditionally
> drm/xe/pf: Remove GuC version check for migration support
> drm/xe: Move migration support to device-level struct
> drm/xe/pf: Convert control state to bitmap
> drm/xe/pf: Add save/restore control state stubs and connect to debugfs
> drm/xe/pf: Add data structures and handlers for migration rings
> drm/xe/pf: Add helpers for migration data packet allocation / free
> drm/xe/pf: Add support for encap/decap of bitstream to/from packet
> drm/xe/pf: Add minimalistic migration descriptor
> drm/xe/pf: Expose VF migration data size over debugfs
> drm/xe: Add sa/guc_buf_cache sync interface
> drm/xe: Allow the caller to pass guc_buf_cache size
> drm/xe/pf: Increase PF GuC Buffer Cache size and use it for VF migration
> drm/xe/pf: Remove GuC migration data save/restore from GT debugfs
> drm/xe/pf: Don't save GuC VF migration data on pause
> drm/xe/pf: Switch VF migration GuC save/restore to struct migration data
> drm/xe/pf: Handle GuC migration data as part of PF control
> drm/xe/pf: Add helpers for VF GGTT migration data handling
> drm/xe/pf: Handle GGTT migration data as part of PF control
> drm/xe/pf: Handle MMIO migration data as part of PF control
> drm/xe/pf: Handle VRAM migration data as part of PF control
> drm/xe/pf: Add wait helper for VF FLR
> drm/intel/bmg: Allow device ID usage with single-argument macros
>
> Mohammed Thasleem (1):
> drm/xe/xe_debugfs: Expose G7 package state residency counter through debugfs
>
> Nitin Gote (1):
> drm/xe/xe3lpg: Extend Wa_15016589081 for xe3lpg
>
> Piotr Piórkowski (1):
> drm/xe/pf: Add runtime registers for GFX ver >= 35
>
> Rodrigo Vivi (1):
> drm/xe: Fix MTL vm_max_level
>
> Shuicheng Lin (1):
> drm/xe: Limit number of jobs per exec queue
>
> Sk Anirban (3):
> drm/xe/cri: Add new performance limit reasons bits
> drm/xe/guc: Eliminate RPe caching for SLPC parameter handling
> drm/xe/guc: Eliminate RPa frequency caching
>
> Tangudu Tilak Tirumalesh (1):
> drm/xe/xe3: Extend wa_14023061436
>
> Tapani Pälli (1):
> drm/xe/xe3: Apply wa_14024997852
>
> Thomas Hellström (1):
> drm/xe: Fix uninitialized return value from xe_validation_guard()
>
> Xin Wang (1):
> drm/xe: highlight reserved PAT entries in dump output
>
> .../ABI/testing/sysfs-driver-intel-xe-sriov | 159 +++
> Documentation/gpu/xe/xe_gt_freq.rst | 3 +
> drivers/gpu/drm/xe/Makefile | 6 +-
> drivers/gpu/drm/xe/regs/xe_gt_regs.h | 14 +-
> drivers/gpu/drm/xe/regs/xe_pmt.h | 1 +
> drivers/gpu/drm/xe/regs/xe_regs.h | 2 +
> .../gpu/drm/xe/tests/xe_gt_sriov_pf_config_kunit.c | 208 ++++
> drivers/gpu/drm/xe/xe_debugfs.c | 1 +
> drivers/gpu/drm/xe/xe_device.c | 23 +-
> drivers/gpu/drm/xe/xe_device_types.h | 11 +
> drivers/gpu/drm/xe/xe_eu_stall.c | 8 +-
> drivers/gpu/drm/xe/xe_exec.c | 14 +-
> drivers/gpu/drm/xe/xe_exec_queue.c | 124 ++-
> drivers/gpu/drm/xe/xe_exec_queue.h | 23 +-
> drivers/gpu/drm/xe/xe_exec_queue_types.h | 17 +
> drivers/gpu/drm/xe/xe_force_wake_types.h | 26 +-
> drivers/gpu/drm/xe/xe_ggtt.c | 104 ++
> drivers/gpu/drm/xe/xe_ggtt.h | 3 +
> drivers/gpu/drm/xe/xe_ggtt_types.h | 2 +
> drivers/gpu/drm/xe/xe_gt.c | 44 +-
> drivers/gpu/drm/xe/xe_gt_freq.c | 30 +-
> drivers/gpu/drm/xe/xe_gt_pagefault.c | 679 ------------
> drivers/gpu/drm/xe/xe_gt_pagefault.h | 19 -
> drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c | 351 +++++-
> drivers/gpu/drm/xe/xe_gt_sriov_pf_config.h | 16 +
> drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c | 650 +++++++++++-
> drivers/gpu/drm/xe/xe_gt_sriov_pf_control.h | 10 +
> drivers/gpu/drm/xe/xe_gt_sriov_pf_control_types.h | 34 +-
> drivers/gpu/drm/xe/xe_gt_sriov_pf_debugfs.c | 47 -
> drivers/gpu/drm/xe/xe_gt_sriov_pf_migration.c | 1112 +++++++++++++++-----
> drivers/gpu/drm/xe/xe_gt_sriov_pf_migration.h | 46 +-
> .../gpu/drm/xe/xe_gt_sriov_pf_migration_types.h | 34 +-
> drivers/gpu/drm/xe/xe_gt_sriov_pf_service.c | 21 +-
> drivers/gpu/drm/xe/xe_gt_sriov_pf_types.h | 5 +-
> drivers/gpu/drm/xe/xe_gt_throttle.c | 375 +++----
> drivers/gpu/drm/xe/xe_gt_types.h | 65 --
> drivers/gpu/drm/xe/xe_guard.h | 119 +++
> drivers/gpu/drm/xe/xe_guc.c | 13 +-
> drivers/gpu/drm/xe/xe_guc_buf.c | 57 +-
> drivers/gpu/drm/xe/xe_guc_buf.h | 2 +
> drivers/gpu/drm/xe/xe_guc_ct.c | 9 +-
> drivers/gpu/drm/xe/xe_guc_pagefault.c | 95 ++
> drivers/gpu/drm/xe/xe_guc_pagefault.h | 15 +
> drivers/gpu/drm/xe/xe_guc_pc.c | 100 +-
> drivers/gpu/drm/xe/xe_guc_pc_types.h | 4 -
> drivers/gpu/drm/xe/xe_migrate.c | 142 ++-
> drivers/gpu/drm/xe/xe_migrate.h | 16 +
> drivers/gpu/drm/xe/xe_oa.c | 54 +-
> drivers/gpu/drm/xe/xe_oa_types.h | 11 +
> drivers/gpu/drm/xe/xe_pagefault.c | 445 ++++++++
> drivers/gpu/drm/xe/xe_pagefault.h | 19 +
> drivers/gpu/drm/xe/xe_pagefault_types.h | 136 +++
> drivers/gpu/drm/xe/xe_pat.c | 15 +-
> drivers/gpu/drm/xe/xe_pat.h | 5 +
> drivers/gpu/drm/xe/xe_pci.c | 2 +-
> drivers/gpu/drm/xe/xe_pci_sriov.c | 62 +-
> drivers/gpu/drm/xe/xe_pci_sriov.h | 1 +
> drivers/gpu/drm/xe/xe_pcode.c | 40 +-
> drivers/gpu/drm/xe/xe_pcode_api.h | 6 -
> drivers/gpu/drm/xe/xe_pm.c | 2 +-
> drivers/gpu/drm/xe/xe_pt.c | 80 +-
> drivers/gpu/drm/xe/xe_reg_whitelist.c | 7 +
> drivers/gpu/drm/xe/xe_sa.c | 21 +
> drivers/gpu/drm/xe/xe_sa.h | 1 +
> drivers/gpu/drm/xe/xe_sched_job.c | 19 +-
> drivers/gpu/drm/xe/xe_sched_job.h | 1 -
> drivers/gpu/drm/xe/xe_sriov_packet.c | 520 +++++++++
> drivers/gpu/drm/xe/xe_sriov_packet.h | 30 +
> drivers/gpu/drm/xe/xe_sriov_packet_types.h | 75 ++
> drivers/gpu/drm/xe/xe_sriov_pf.c | 107 ++
> drivers/gpu/drm/xe/xe_sriov_pf.h | 4 +
> drivers/gpu/drm/xe/xe_sriov_pf_control.c | 128 +++
> drivers/gpu/drm/xe/xe_sriov_pf_control.h | 5 +
> drivers/gpu/drm/xe/xe_sriov_pf_debugfs.c | 131 +++
> drivers/gpu/drm/xe/xe_sriov_pf_helpers.h | 16 +
> drivers/gpu/drm/xe/xe_sriov_pf_migration.c | 342 ++++++
> drivers/gpu/drm/xe/xe_sriov_pf_migration.h | 29 +
> drivers/gpu/drm/xe/xe_sriov_pf_migration_types.h | 37 +
> drivers/gpu/drm/xe/xe_sriov_pf_provision.c | 284 +++++
> drivers/gpu/drm/xe/xe_sriov_pf_provision.h | 14 +
> drivers/gpu/drm/xe/xe_sriov_pf_sysfs.c | 647 ++++++++++++
> drivers/gpu/drm/xe/xe_sriov_pf_sysfs.h | 16 +
> drivers/gpu/drm/xe/xe_sriov_pf_types.h | 21 +
> drivers/gpu/drm/xe/xe_sriov_vf.c | 8 -
> drivers/gpu/drm/xe/xe_svm.c | 3 +-
> drivers/gpu/drm/xe/xe_sync.c | 95 +-
> drivers/gpu/drm/xe/xe_sync.h | 3 +
> drivers/gpu/drm/xe/xe_sync_types.h | 3 +
> drivers/gpu/drm/xe/xe_tlb_inval_job.c | 31 +-
> drivers/gpu/drm/xe/xe_tlb_inval_job.h | 5 +-
> drivers/gpu/drm/xe/xe_trace.h | 23 +
> drivers/gpu/drm/xe/xe_validation.h | 8 +-
> drivers/gpu/drm/xe/xe_vm.c | 101 +-
> drivers/gpu/drm/xe/xe_vm_types.h | 6 +-
> drivers/gpu/drm/xe/xe_vram.c | 26 +-
> drivers/gpu/drm/xe/xe_wa.c | 7 +
> include/drm/intel/pciids.h | 2 +-
> 97 files changed, 6762 insertions(+), 1751 deletions(-)
> create mode 100644 Documentation/ABI/testing/sysfs-driver-intel-xe-sriov
> create mode 100644 drivers/gpu/drm/xe/tests/xe_gt_sriov_pf_config_kunit.c
> delete mode 100644 drivers/gpu/drm/xe/xe_gt_pagefault.c
> delete mode 100644 drivers/gpu/drm/xe/xe_gt_pagefault.h
> create mode 100644 drivers/gpu/drm/xe/xe_guard.h
> create mode 100644 drivers/gpu/drm/xe/xe_guc_pagefault.c
> create mode 100644 drivers/gpu/drm/xe/xe_guc_pagefault.h
> create mode 100644 drivers/gpu/drm/xe/xe_pagefault.c
> create mode 100644 drivers/gpu/drm/xe/xe_pagefault.h
> create mode 100644 drivers/gpu/drm/xe/xe_pagefault_types.h
> create mode 100644 drivers/gpu/drm/xe/xe_sriov_packet.c
> create mode 100644 drivers/gpu/drm/xe/xe_sriov_packet.h
> create mode 100644 drivers/gpu/drm/xe/xe_sriov_packet_types.h
> create mode 100644 drivers/gpu/drm/xe/xe_sriov_pf_migration.c
> create mode 100644 drivers/gpu/drm/xe/xe_sriov_pf_migration.h
> create mode 100644 drivers/gpu/drm/xe/xe_sriov_pf_migration_types.h
> create mode 100644 drivers/gpu/drm/xe/xe_sriov_pf_sysfs.c
> create mode 100644 drivers/gpu/drm/xe/xe_sriov_pf_sysfs.h