Hi Dave and Sima,

Here goes our second drm-xe-next pull towards 7.4.

Big things we have are: VRAM health check + CCS fix (test for a bug
Linus root caused), GPUSVM supporting multiple dma-mappings for a
get_pages() call + inline mappings, memory page offlining, and continued
SIGID logging work.

Matt


drm-xe-next-2026-09-18:
UAPI Changes:
- Add SRCID to pagefault reporting (Jonathan)

Cross-subsystem Changes:
- gpusvm: share one HMM fault and keep single mappings inline (Honglei)
- pagemap: Prevent CPU stalls during unbounded pagemap teardown (Varun)

Driver Changes:
- VRAM health check + CCS fix (Auld)
- Add memory page offlining support (Tejas)
- Report GT TDR and VM rebind faults using SIGID (Arvind)
- Flush LSC untyped L1 dataport cache after rcs/ccs batches (Thomas)
- Add multi_queue_active_lrca debugfs (Varun)
- mmio_gem: fix fault handler and destroy path (Auld, Ilia, Shuicheng)
- sysctrl: Add helper to query application status (Anoop)
- shrinker: Runtime PM reference for non-system memory (Shuicheng)
- pcode: Increase default mailbox timeout (Karthik)
- Skip clearing purged page-table BOs (Tejas)
- tests: Fix subplatform selection (Wajdeczko)
- log: Relax location ID recognition (Wajdeczko)
- i2c: Disable IRQ on unbind (Raag)
- Refactor VF LMEM BAR resize helper function (Wajdeczko)
- pf: Add _locked variant of config functions (Wajdeczko)
- nvm: add system controller region (Alexander)
- guc: Add simple KLV decoder helpers (Wajdeczko)
- debugfs: Expose per-engine idle status (Anirban)
- gt_throttle: Report power brake as a throttle reason on CRI (Anirban)
- tlb_inval: Treat wedged-device invalidations as complete (Shuicheng)
- Add mnemonic error reason to page fault diagnostics (Brost)
- Keep walking on SVM eviction failure (Brost)
- Make p2pdma distance check verbose via dynamic debug (Thomas)
- Consolidate semaphore instruction definitions (Roper)
- Poll GT for C6 before D3 (Vinay)
The following changes since commit cc467969646b9778c947bec1383fb3cdaada14d5:

  Merge drm/drm-next into drm-xe-next (2026-08-31 15:42:28 -0700)

are available in the Git repository at:

  https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-next-2026-09-18

for you to fetch changes up to 320662381ca243a3364663e917a7447afaf618fa:

  drm/xe: Poll GT for C6 before D3 (2026-09-18 11:52:56 -0400)

----------------------------------------------------------------
UAPI Changes:
- Add SRCID to pagefault reporting (Jonathan)

Cross-subsystem Changes:
- gpusvm: share one HMM fault and keep single mappings inline (Honglei)
- pagemap: Prevent CPU stalls during unbounded pagemap teardown (Varun)

Driver Changes:
- VRAM health check + CCS fix (Auld)
- Add memory page offlining support (Tejas)
- Report GT TDR and VM rebind faults using SIGID (Arvind)
- Flush LSC untyped L1 dataport cache after rcs/ccs batches (Thomas)
- Add multi_queue_active_lrca debugfs (Varun)
- mmio_gem: fix fault handler and destroy path (Auld, Ilia, Shuicheng)
- sysctrl: Add helper to query application status (Anoop)
- shrinker: Runtime PM reference for non-system memory (Shuicheng)
- pcode: Increase default mailbox timeout (Karthik)
- Skip clearing purged page-table BOs (Tejas)
- tests: Fix subplatform selection (Wajdeczko)
- log: Relax location ID recognition (Wajdeczko)
- i2c: Disable IRQ on unbind (Raag)
- Refactor VF LMEM BAR resize helper function (Wajdeczko)
- pf: Add _locked variant of config functions (Wajdeczko)
- nvm: add system controller region (Alexander)
- guc: Add simple KLV decoder helpers (Wajdeczko)
- debugfs: Expose per-engine idle status (Anirban)
- gt_throttle: Report power brake as a throttle reason on CRI (Anirban)
- tlb_inval: Treat wedged-device invalidations as complete (Shuicheng)
- Add mnemonic error reason to page fault diagnostics (Brost)
- Keep walking on SVM eviction failure (Brost)
- Make p2pdma distance check verbose via dynamic debug (Thomas)
- Consolidate semaphore instruction definitions (Roper)
- Poll GT for C6 before D3 (Vinay)

----------------------------------------------------------------
Alexander Usyskin (1):
      drm/xe/nvm: add system controller region

Anoop Vijay (2):
      drm/xe/sysctrl: Add helper to query application status
      drm/xe/sysctrl: Add helper to check oCode firmware readiness

Arvind Yadav (4):
      drm/xe/log: Add GUCSUBMIT component
      drm/xe/guc: Report reset failure using SIGID
      drm/xe/svm: Report terminal page-fault failures using SIGID
      drm/xe/gt: Report GT reset failure using SIGID

Honglei Huang (6):
      drm/gpusvm: move dma_addr allocation before the notifier lock
      drm/gpusvm: extract drm_gpusvm_dma_map_pages() helper
      drm/gpusvm: let drm_gpusvm_get_pages() map an array of pages
      drm/gpusvm: make the DMA mapping step in get_pages() optional
      drm/gpusvm: keep a single DMA mapping inline for THP
      drm/gpusvm: keep an IOVA mapped range dma address inline

Ilia Levi (5):
      drm/xe/mmio_gem: forbid VMA split
      drm/xe/mmio_gem: use write-back mapping for dummy page
      drm/xe/mmio_gem: simplify fault handler loop
      drm/xe/mmio_gem: cache the dummy page per object
      drm/xe/mmio_gem: fix destroy flow

Jonathan Cavitt (2):
      drm/xe/pagefault: Add SRCID to pagefault struct
      drm/xe/vm: Add srcid to xe_vm_get_property_ioctl fault report

Karthik Poosa (2):
      drm/xe/pcode: Increase default pcode mailbox timeout to 10ms
      drm/xe/hwmon: Use shared pcode default timeout for power limit write

Matt Roper (1):
      drm/xe: Consolidate semaphore instruction definitions

Matthew Auld (7):
      drm/xe/migrate: support 4K PTEs for identity map
      drm/xe/vram: report FLAT_CCS base misalignment
      drm/xe/vram: revamp CPU VRAM mapping
      drm/xe: add force option for global invalidation
      drm/xe/vram: add early VRAM health check
      drm/xe/mmio_gem: reject VM_EXEC and drop VM_DONTCOPY
      drm/xe: convert PCI barrier mmap to use xe_mmio_gem

Matthew Brost (2):
      drm/xe: Add mnemonic error reason to page fault diagnostics
      drm/xe: Keep walking on SVM eviction failure

Michal Wajdeczko (15):
      drm/xe/tests: Fix default subplatform selection
      drm/xe/tests: Fix subplatform selection
      drm/xe: Drop unused parameter from xe_info_init
      drm/xe: Keep reference to device descriptor
      drm/xe: Drop redundant parameters from xe_info_init_early
      drm/xe: Drop redundant parameter from xe_probe_info_early
      drm/xe: Drop redundant parameter from xe_probe_info and friends
      drm/xe/log: Relax location ID recognition
      drm/xe/pf: Refactor VF LMEM BAR resize helper function
      drm/xe/pf: Add _locked variant of the priority config function
      drm/xe/pf: Add _locked variant of the release config function
      drm/xe/pf: Add _locked variant of the fair sched config function
      drm/xe/guc: Add simple KLV decoder helpers
      drm/xe/tests: Add kunit tests for KLV decoders
      drm/xe/pf: Use KLV decode helpers to parse migration packet

Raag Jadav (1):
      drm/xe/i2c: Disable IRQ on unbind

Shuicheng Lin (4):
      drm/xe/mmio_gem: Revoke drm_vma_node on xe_mmio_gem destroy
      drm/xe/shrinker: Return the freed page count through a parameter
      drm/xe/shrinker: Take a runtime PM ref before shrinking non-system memory
      drm/xe/tlb_inval: Treat wedged-device invalidations as complete

Sk Anirban (2):
      drm/xe/debugfs: Expose per-engine idle status
      drm/xe/gt_throttle: Report power brake as a throttle reason on CRI

Tejas Upadhyay (16):
      drm/xe: Link VRAM resource allocation with gpu buddy
      drm/xe: Link LRC BO and its execution queue with safe lifetime rules
      drm/xe: Export xe_ttm_bo_purge()
      drm/xe: Handle NULL resource and allow purging of VRAM pages
      drm/xe/bo: Make xe_bo_is_user() public
      drm/xe: Guard teardown paths against purged BOs
      drm/xe/vram: Extract buddy allocation and free helpers
      drm/xe/vram: Add page offline data structures and lifecycle
      drm/xe/vram: Add VRAM page offline fault handler
      drm/xe/configfs: Add disable_vram_page_offline attribute
      drm/xe/ras: Cache disable_vram_page_offline policy at init
      drm/xe/vram: Check disable_vram_page_offline policy in fault handler
      drm/xe: Expose bad VRAM pages via debugfs
      drm/xe/uapi: Expose ban reason in EXEC_QUEUE_GET_PROPERTY_BAN
      drm/xe: Add fault-inject based VRAM page offline injection
      drm/xe: Skip clearing purged page-table BOs

Thomas Hellström (2):
      drm/xe: Flush LSC untyped L1 dataport cache after rcs/ccs batches
      drm/xe: Make p2pdma distance check verbose via dynamic debug

Varun Gupta (3):
      drm/xe: Guard page-fault worker with runtime PM check
      drm/xe: Add multi_queue_active_lrca debugfs
      drm/pagemap: Prevent CPU stalls during unbounded pagemap teardown

Vinay Belgaumkar (1):
      drm/xe: Poll GT for C6 before D3

 drivers/gpu/drm/drm_gpusvm.c                       | 410 ++++++++++----
 drivers/gpu/drm/drm_pagemap.c                      |   5 +-
 drivers/gpu/drm/xe/abi/xe_log_abi.h                |   1 +
 drivers/gpu/drm/xe/display/xe_dsb_buffer.c         |   2 +-
 drivers/gpu/drm/xe/display/xe_fb_pin.c             |   2 +-
 drivers/gpu/drm/xe/display/xe_panic.c              |   3 +-
 drivers/gpu/drm/xe/instructions/xe_gpu_commands.h  |   1 +
 drivers/gpu/drm/xe/instructions/xe_mi_commands.h   |   7 +-
 drivers/gpu/drm/xe/regs/xe_gt_regs.h               |  28 +
 .../gpu/drm/xe/tests/xe_guc_klv_helpers_kunit.c    | 303 +++++++++++
 drivers/gpu/drm/xe/tests/xe_pci.c                  |  25 +-
 drivers/gpu/drm/xe/xe_bo.c                         |  83 ++-
 drivers/gpu/drm/xe/xe_bo.h                         |   3 +-
 drivers/gpu/drm/xe/xe_bo_types.h                   |   8 +
 drivers/gpu/drm/xe/xe_configfs.c                   |  72 ++-
 drivers/gpu/drm/xe/xe_configfs.h                   |   2 +
 drivers/gpu/drm/xe/xe_debugfs.c                    |  51 ++
 drivers/gpu/drm/xe/xe_debugfs.h                    |   2 +
 drivers/gpu/drm/xe/xe_devcoredump.c                |   4 +-
 drivers/gpu/drm/xe/xe_device.c                     | 120 +----
 drivers/gpu/drm/xe/xe_device.h                     |   2 +-
 drivers/gpu/drm/xe/xe_device_types.h               |  19 +
 drivers/gpu/drm/xe/xe_dma_buf.c                    |  22 +-
 drivers/gpu/drm/xe/xe_drm_ras_types.h              |   3 +
 drivers/gpu/drm/xe/xe_exec_queue.c                 |  72 ++-
 drivers/gpu/drm/xe/xe_exec_queue_types.h           |   7 +-
 drivers/gpu/drm/xe/xe_execlist.c                   |   4 +-
 drivers/gpu/drm/xe/xe_gt.c                         |  11 +-
 drivers/gpu/drm/xe/xe_gt_debugfs.c                 | 106 +++-
 drivers/gpu/drm/xe/xe_gt_idle.c                    |  39 ++
 drivers/gpu/drm/xe/xe_gt_idle.h                    |   1 +
 drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c         | 108 +++-
 drivers/gpu/drm/xe/xe_gt_sriov_pf_config.h         |   4 +
 drivers/gpu/drm/xe/xe_gt_throttle.c                |   5 +-
 drivers/gpu/drm/xe/xe_guc_capture.c                |   2 -
 drivers/gpu/drm/xe/xe_guc_klv_helpers.c            |  78 +++
 drivers/gpu/drm/xe/xe_guc_klv_helpers.h            |   5 +
 drivers/gpu/drm/xe/xe_guc_pagefault.c              |   8 +-
 drivers/gpu/drm/xe/xe_guc_submit.c                 | 115 +++-
 drivers/gpu/drm/xe/xe_guc_submit.h                 |   5 +
 drivers/gpu/drm/xe/xe_hwmon.c                      |   7 +-
 drivers/gpu/drm/xe/xe_i2c.c                        |   3 +
 drivers/gpu/drm/xe/xe_log.c                        |  42 +-
 drivers/gpu/drm/xe/xe_lrc.c                        |   6 +-
 drivers/gpu/drm/xe/xe_lrc.h                        |   1 +
 drivers/gpu/drm/xe/xe_migrate.c                    | 121 ++++-
 drivers/gpu/drm/xe/xe_migrate.h                    |   6 +
 drivers/gpu/drm/xe/xe_mmio_gem.c                   | 115 ++--
 drivers/gpu/drm/xe/xe_mmio_gem.h                   |   2 +-
 drivers/gpu/drm/xe/xe_nvm.c                        |   1 +
 drivers/gpu/drm/xe/xe_pagefault.c                  | 128 ++++-
 drivers/gpu/drm/xe/xe_pagefault.h                  |  67 ++-
 drivers/gpu/drm/xe/xe_pagefault_types.h            |  91 +++-
 drivers/gpu/drm/xe/xe_pci.c                        |  42 +-
 drivers/gpu/drm/xe/xe_pci_sriov.c                  |  27 +-
 drivers/gpu/drm/xe/xe_pcode.c                      |   2 +-
 drivers/gpu/drm/xe/xe_pcode.h                      |   4 +-
 drivers/gpu/drm/xe/xe_pm.c                         |  18 +
 drivers/gpu/drm/xe/xe_pm.h                         |   1 +
 drivers/gpu/drm/xe/xe_pt.c                         |  28 +-
 drivers/gpu/drm/xe/xe_ras.c                        |   9 +
 drivers/gpu/drm/xe/xe_res_cursor.h                 |   5 +-
 drivers/gpu/drm/xe/xe_ring_ops.c                   |  15 +-
 drivers/gpu/drm/xe/xe_shrinker.c                   | 124 +++--
 drivers/gpu/drm/xe/xe_sriov_packet.c               |  31 +-
 drivers/gpu/drm/xe/xe_svm.c                        |  36 +-
 drivers/gpu/drm/xe/xe_svm.h                        |  20 +
 drivers/gpu/drm/xe/xe_sysctrl.c                    |  92 ++++
 drivers/gpu/drm/xe/xe_sysctrl.h                    |   2 +
 drivers/gpu/drm/xe/xe_sysctrl_mailbox_types.h      |  45 ++
 drivers/gpu/drm/xe/xe_tile_types.h                 |   4 +
 drivers/gpu/drm/xe/xe_tlb_inval.c                  |   3 +-
 drivers/gpu/drm/xe/xe_ttm_vram_mgr.c               | 600 ++++++++++++++++++++-
 drivers/gpu/drm/xe/xe_ttm_vram_mgr.h               |   3 +
 drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h         |  40 ++
 drivers/gpu/drm/xe/xe_userptr.c                    |   2 +-
 drivers/gpu/drm/xe/xe_vm.c                         |  15 +-
 drivers/gpu/drm/xe/xe_vm_types.h                   |   2 +
 drivers/gpu/drm/xe/xe_vram.c                       | 258 ++++++++-
 drivers/gpu/drm/xe/xe_vram.h                       |  10 +
 include/drm/drm_gpusvm.h                           |  71 ++-
 include/uapi/drm/xe_drm.h                          |  22 +-
 82 files changed, 3301 insertions(+), 568 deletions(-)

Reply via email to