drm-xe-next-2026-03-25: Hi Dave and Sima, Here goes our third, perhaps, final drm-xe-next PR towards 7.1.
In the big things we have: - THP support in drm_pagemap - xe_vm_get_property_ioctl Thanks, Matt UAPI Changes: - Implement xe_vm_get_property_ioctl (Jonathan) Cross-subsystem Changes: - Enable THP support in drm_pagemap (Francois, Brost) Core Changes: - Improve VF FLR synchronization for Xe VFIO (Piotr) Driver Changes: - Fix confusion with locals on context creation (Tomasz, Fixes) - Add new SVM copy GT stats per size (Francois) - always keep track of remap prev/next (Auld, Fixes) - AuxCCS handling and render compression modifiers (Tvrtko) - Implement recent spec updates to Wa_16025250150 (Roper) - xe3p_lpg: L2 flush optimization (Tejas) - vf: Improve getting clean NULL context (Wajdeczko) - pf: Fix use-after-free in migration restore (Winiarski. Fixes) - Fix format specifier for printing pointer differences (Nathan Chancellor, Fixes) - Extend Wa_14026781792 for xe3lpg (Niton) - xe3p_lpg: Add Wa_16029437861 (Varun) - Fix spelling mistakes and comment style in ttm_resource.c (Varun) - Merge drm/drm-next into drm-xe-next (Thomas) - Fix missing runtime PM reference in ccs_mode_store (Sanjay, Fixes) - Fix uninitialized new_ts when capturing context timestamp (Umesh) - Allow reading after disabling OA stream (Ashutosh) - Page Reclamation Fixes (Brian Nguyen, Fixes) - Include running dword offset in default_lrc dumps (Roper) - Assert/Deassert I2C IRQ (Raag) - Fixup reset, wedge, unload corner cases (Zhanjun, Brost) - Fail immediately on GuC load error (Daniele) - Fix kernel-doc for DRM_XE_VM_BIND_FLAG_DECOMPRESS (Niton, Fixes) - Drop redundant entries for Wa_16021867713 & Wa_14019449301 (Roper, Fixes) The following changes since commit d93f8ea0e5ad41d661496d205fac3e2fbd9358c0: Merge tag 'drm-intel-next-2026-03-16' of https://gitlab.freedesktop.org/drm/i915/kernel into drm-next (2026-03-17 15:44:26 +1000) are available in the Git repository at: https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-next-2026-03-25 for you to fetch changes up to 3d4939c0ec011ad6dfda7c13362b3d2013425789: drm/xe: Fix confusion with locals on context creation (2026-03-25 18:24:52 -0700) ---------------------------------------------------------------- UAPI Changes: - Implement xe_vm_get_property_ioctl (Jonathan) Cross-subsystem Changes: - Enable THP support in drm_pagemap (Francois, Brost) Core Changes: - Improve VF FLR synchronization for Xe VFIO (Piotr) Driver Changes: - Fix confusion with locals on context creation (Tomasz, Fixes) - Add new SVM copy GT stats per size (Francois) - always keep track of remap prev/next (Auld, Fixes) - AuxCCS handling and render compression modifiers (Tvrtko) - Implement recent spec updates to Wa_16025250150 (Roper) - xe3p_lpg: L2 flush optimization (Tejas) - vf: Improve getting clean NULL context (Wajdeczko) - pf: Fix use-after-free in migration restore (Winiarski. Fixes) - Fix format specifier for printing pointer differences (Nathan Chancellor, Fixes) - Extend Wa_14026781792 for xe3lpg (Niton) - xe3p_lpg: Add Wa_16029437861 (Varun) - Fix spelling mistakes and comment style in ttm_resource.c (Varun) - Merge drm/drm-next into drm-xe-next (Thomas) - Fix missing runtime PM reference in ccs_mode_store (Sanjay, Fixes) - Fix uninitialized new_ts when capturing context timestamp (Umesh) - Allow reading after disabling OA stream (Ashutosh) - Page Reclamation Fixes (Brian Nguyen, Fixes) - Include running dword offset in default_lrc dumps (Roper) - Assert/Deassert I2C IRQ (Raag) - Fixup reset, wedge, unload corner cases (Zhanjun, Brost) - Fail immediately on GuC load error (Daniele) - Fix kernel-doc for DRM_XE_VM_BIND_FLAG_DECOMPRESS (Niton, Fixes) - Drop redundant entries for Wa_16021867713 & Wa_14019449301 (Roper, Fixes) ---------------------------------------------------------------- Ashutosh Dixit (1): drm/xe/oa: Allow reading after disabling OA stream Brian Nguyen (3): drm/xe: Skip over non leaf pte for PRL generation drm/xe: Move page reclaim done_handler to own func drm/xe: Skip adding PRL entry to NULL VMA Daniele Ceraolo Spurio (1): drm/xe/guc: Fail immediately on GuC load error Francois Dugast (4): drm/pagemap: Unlock and put folios when possible drm/pagemap: Add helper to access zone_device_data drm/pagemap: Enable THP support for GPU memory migration drm/xe: Add new SVM copy GT stats per size Jonathan Cavitt (4): drm/xe/xe_pagefault: Disallow writes to read-only VMAs drm/xe/uapi: Define drm_xe_vm_get_property drm/xe/xe_vm: Add per VM fault info drm/xe/xe_vm: Implement xe_vm_get_property_ioctl Matt Roper (3): drm/xe/wa: Drop redundant entries for Wa_16021867713 & Wa_14019449301 drm/xe: Include running dword offset in default_lrc dumps drm/xe: Implement recent spec updates to Wa_16025250150 Matthew Auld (1): drm/xe: always keep track of remap prev/next Matthew Brost (5): drm/xe: Always kill exec queues in xe_guc_submit_pause_abort drm/xe: Forcefully tear down exec queues in GuC submit fini drm/xe: Trigger queue cleanup if not in wedged mode 2 drm/xe: Open-code GGTT MMIO access protection drm/pagemap: Correct cpages calculation for migrate_vma_setup Michal Wajdeczko (3): drm/xe: Add PR_CTR_CTRL/THRSH register definitions drm/xe: Add MI_SEMAPHORE_WAIT command definition drm/xe/vf: Improve getting clean NULL context Michał Winiarski (1): drm/xe/pf: Fix use-after-free in migration restore Nathan Chancellor (1): drm/xe: Fix format specifier for printing pointer differences Nitin Gote (2): drm/xe/uapi: Fix kernel-doc for DRM_XE_VM_BIND_FLAG_DECOMPRESS drm/xe: Extend Wa_14026781792 for xe3lpg Piotr Piórkowski (2): drm/xe/pf: Add FLR_PREPARE state to VF control flow vfio/xe: Notify PF about VF FLR in reset_prepare Raag Jadav (1): drm/xe/i2c: Assert/Deassert I2C IRQ Sanjay Yadav (1): drm/xe: Fix missing runtime PM reference in ccs_mode_store Tejas Upadhyay (4): drm/xe/xe3p_lpg: flush shrinker bo cachelines manually drm/xe/pat: define coh_mode 2way drm/xe/xe3p_lpg: Restrict UAPI to enable L2 flush optimization drm/xe/xe3p: Skip TD flush Thomas Hellström (1): Merge drm/drm-next into drm-xe-next Tomasz Lis (1): drm/xe: Fix confusion with locals on context creation Tvrtko Ursulin (12): drm/xe: Rename XE_BO_FLAG_SCANOUT to XE_BO_FLAG_FORCE_WC drm/xe: Use write-combine mapping when populating DPT drm/xe/xelpg: Limit AuxCCS ring buffer programming to Alderlake drm/xe/xelp: Quiesce memory traffic before invalidating AuxCCS drm/xe/xelp: Wait for AuxCCS invalidation to complete drm/xe: Move aux table invalidation to ring ops drm/xe/xelp: Add AuxCCS invalidation to the indirect context workarounds drm/xe/display: Move remapped plane loop out of __xe_pin_fb_vma_dpt drm/xe/display: Change write_dpt_remapped_tiled function signature drm/xe/display: Respect remapped plane alignment drm/xe/display: Add support for AuxCCS drm/xe/xelp: Expose AuxCCS frame buffer modifiers on Alderlake-P Umesh Nerlige Ramappa (1): drm/xe/lrc: Fix uninitialized new_ts when capturing context timestamp Varun Gupta (2): drm/ttm: Fix spelling mistakes and comment style in ttm_resource.c drm/xe/xe3p_lpg: Add Wa_16029437861 Zhanjun Dong (3): drm/xe: Use XE_WEDGED_MODE_UPON_ANY_HANG_NO_RESET enum instead of magic number drm/xe/guc: Ensure CT state transitions via STOP before DISABLED drm/xe/uc: Drop xe_guc_sanitize in favor of managed cleanup drivers/gpu/drm/drm_gpusvm.c | 7 +- drivers/gpu/drm/drm_pagemap.c | 157 ++++++++++++--- drivers/gpu/drm/ttm/ttm_resource.c | 28 +-- drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 12 +- drivers/gpu/drm/xe/display/xe_display.c | 8 + drivers/gpu/drm/xe/display/xe_display_bo.c | 6 +- drivers/gpu/drm/xe/display/xe_dsb_buffer.c | 4 +- drivers/gpu/drm/xe/display/xe_fb_pin.c | 118 ++++++++---- drivers/gpu/drm/xe/display/xe_initial_plane.c | 2 +- drivers/gpu/drm/xe/instructions/xe_mi_commands.h | 19 ++ drivers/gpu/drm/xe/regs/xe_engine_regs.h | 8 + drivers/gpu/drm/xe/regs/xe_gt_regs.h | 1 + drivers/gpu/drm/xe/xe_bo.c | 24 ++- drivers/gpu/drm/xe/xe_bo.h | 2 +- drivers/gpu/drm/xe/xe_device.c | 33 ++++ drivers/gpu/drm/xe/xe_device.h | 1 + drivers/gpu/drm/xe/xe_ggtt.c | 15 +- drivers/gpu/drm/xe/xe_gt.c | 9 +- drivers/gpu/drm/xe/xe_gt_ccs_mode.c | 2 + drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c | 78 ++++++-- drivers/gpu/drm/xe/xe_gt_sriov_pf_control.h | 1 + drivers/gpu/drm/xe/xe_gt_sriov_pf_control_types.h | 2 + drivers/gpu/drm/xe/xe_gt_stats.c | 6 + drivers/gpu/drm/xe/xe_gt_stats_types.h | 6 + drivers/gpu/drm/xe/xe_guc.c | 35 +++- drivers/gpu/drm/xe/xe_guc.h | 1 + drivers/gpu/drm/xe/xe_guc_ct.c | 24 +-- drivers/gpu/drm/xe/xe_guc_fwif.h | 1 + drivers/gpu/drm/xe/xe_guc_submit.c | 87 ++++++--- drivers/gpu/drm/xe/xe_i2c.c | 15 +- drivers/gpu/drm/xe/xe_lrc.c | 96 +++++++--- drivers/gpu/drm/xe/xe_oa.c | 7 +- drivers/gpu/drm/xe/xe_page_reclaim.c | 26 +++ drivers/gpu/drm/xe/xe_page_reclaim.h | 3 + drivers/gpu/drm/xe/xe_pagefault.c | 32 ++++ drivers/gpu/drm/xe/xe_pat.c | 14 +- drivers/gpu/drm/xe/xe_pat.h | 5 +- drivers/gpu/drm/xe/xe_pt.c | 50 +++-- drivers/gpu/drm/xe/xe_ring_ops.c | 143 ++++++++++++-- drivers/gpu/drm/xe/xe_ring_ops_types.h | 8 +- drivers/gpu/drm/xe/xe_sched_job_types.h | 2 + drivers/gpu/drm/xe/xe_sriov_packet.c | 2 + drivers/gpu/drm/xe/xe_sriov_pf_control.c | 24 +++ drivers/gpu/drm/xe/xe_sriov_pf_control.h | 1 + drivers/gpu/drm/xe/xe_sriov_vfio.c | 1 + drivers/gpu/drm/xe/xe_svm.c | 27 ++- drivers/gpu/drm/xe/xe_uc.c | 22 +-- drivers/gpu/drm/xe/xe_vm.c | 223 +++++++++++++++++++++- drivers/gpu/drm/xe/xe_vm.h | 12 ++ drivers/gpu/drm/xe/xe_vm_madvise.c | 25 ++- drivers/gpu/drm/xe/xe_vm_types.h | 33 ++++ drivers/gpu/drm/xe/xe_wa.c | 27 +-- drivers/vfio/pci/xe/main.c | 14 ++ include/drm/drm_pagemap.h | 21 ++ include/drm/intel/xe_sriov_vfio.h | 11 ++ include/uapi/drm/xe_drm.h | 92 ++++++++- 56 files changed, 1340 insertions(+), 293 deletions(-)
