[git pull] drm fixes for 7.0-rc5

From: Dave Airlie

Date: Fri Mar 20 2026 - 20:31:15 EST


Hi Linus,

Regular weekly pull request, from sunny San Diego. Usual suspects in
xe/i915/amdgpu with small fixes all over, then some minor fixes across
a few other drivers. It's probably a bit on the heavy side, but most
of the fix seem well contained,

Regards,
Dave.

drm-fixes-2026-03-21:
drm fixes for 7.0-rc5

core:
- drm_dev_unplug UAF fix

pagemap:
- lock handling fix

xe:
- A number of teardown fixes
- Skip over non-leaf PTE for PRL generation
- Fix an unitialized variable
- Fix a missing runtime PM reference

i915/display:
- Fix #15771: Screen corruption and stuttering on P14s w/ 3K display
- Fix for PSR entry setup frames count on rejected commit
- Fix OOPS if firmware is not loaded and suspend is attempted
- Fix unlikely NULL deref due to DC6 on probe

amdgpu:
- Fix gamma 2.2 colorop TFs
- BO list fix
- LTO fix
- DC FP fix
- DisplayID handling fix
- DCN 2.01 fix
- MMHUB boundary fixes
- ISP fix
- TLB fence fix
- Hainan pm fix

radeon:
- Hainan pm fix

vmwgfx:
- memory leak fix
- doc warning fix

imagination:
- deadlock fix
- interrupt handling fixes

dw-hdmi-qp:
- multi channel audio fix
The following changes since commit f338e77383789c0cae23ca3d48adcc5e9e137e3c:

Linux 7.0-rc4 (2026-03-15 13:52:05 -0700)

are available in the Git repository at:

https://gitlab.freedesktop.org/drm/kernel.git tags/drm-fixes-2026-03-21

for you to fetch changes up to a6e77320badd1444b0429ff8b6f338b750a1dc4f:

Merge tag 'drm-xe-fixes-2026-03-19' of
https://gitlab.freedesktop.org/drm/xe/kernel into drm-fixes
(2026-03-21 02:17:59 +1000)

----------------------------------------------------------------
drm fixes for 7.0-rc5

core:
- drm_dev_unplug UAF fix

pagemap:
- lock handling fix

xe:
- A number of teardown fixes
- Skip over non-leaf PTE for PRL generation
- Fix an unitialized variable
- Fix a missing runtime PM reference

i915/display:
- Fix #15771: Screen corruption and stuttering on P14s w/ 3K display
- Fix for PSR entry setup frames count on rejected commit
- Fix OOPS if firmware is not loaded and suspend is attempted
- Fix unlikely NULL deref due to DC6 on probe

amdgpu:
- Fix gamma 2.2 colorop TFs
- BO list fix
- LTO fix
- DC FP fix
- DisplayID handling fix
- DCN 2.01 fix
- MMHUB boundary fixes
- ISP fix
- TLB fence fix
- Hainan pm fix

radeon:
- Hainan pm fix

vmwgfx:
- memory leak fix
- doc warning fix

imagination:
- deadlock fix
- interrupt handling fixes

dw-hdmi-qp:
- multi channel audio fix

----------------------------------------------------------------
Alessio Belle (3):
drm/imagination: Fix deadlock in soft reset sequence
drm/imagination: Synchronize interrupts before suspending the GPU
drm/imagination: Disable interrupts before suspending the GPU

Alex Deucher (11):
drm/amdgpu/mmhub2.0: add bounds checking for cid
drm/amdgpu/mmhub2.3: add bounds checking for cid
drm/amdgpu/mmhub3.0.1: add bounds checking for cid
drm/amdgpu/mmhub3.0.2: add bounds checking for cid
drm/amdgpu/mmhub3.0: add bounds checking for cid
drm/amdgpu/mmhub4.1.0: add bounds checking for cid
drm/amdgpu/mmhub4.2.0: add bounds checking for cid
drm/amdgpu/gmc9.0: add bounds checking for cid
drm/amdgpu: rework how we handle TLB fences
drm/amdgpu: apply state adjust rules to some additional HAINAN vairants
drm/radeon: apply state adjust rules to some additional HAINAN vairants

Alex Hung (1):
drm/amd/display: Fix gamma 2.2 colorop TFs

Andy Nguyen (1):
drm/amd: fix dcn 2.01 check

Ashutosh Dixit (1):
drm/xe/oa: Allow reading after disabling OA stream

Brian Nguyen (1):
drm/xe: Skip over non leaf pte for PRL generation

Calvin Owens (1):
drm/amd/display: Fix uninitialized variable use which breaks full LTO

Daniele Ceraolo Spurio (1):
drm/xe/guc: Fail immediately on GuC load error

Dave Airlie (4):
Merge tag 'drm-intel-fixes-2026-03-19' of
https://gitlab.freedesktop.org/drm/i915/kernel into drm-fixes
Merge tag 'drm-misc-fixes-2026-03-19' of
https://gitlab.freedesktop.org/drm/misc/kernel into drm-fixes
Merge tag 'amd-drm-fixes-7.0-2026-03-19' of
https://gitlab.freedesktop.org/agd5f/linux into drm-fixes
Merge tag 'drm-xe-fixes-2026-03-19' of
https://gitlab.freedesktop.org/drm/xe/kernel into drm-fixes

Ian Forbes (1):
drm/vmwgfx: Don't overwrite KMS surface dirty tracker

Imre Deak (1):
drm/i915/dmc: Fix an unlikely NULL pointer deference at probe

Jesse.Zhang (1):
drm/amdgpu: Limit BO list entry count to prevent resource exhaustion

Jonas Karlman (1):
drm/bridge: dw-hdmi-qp: fix multi-channel audio output

Jonathan Cavitt (1):
drm/pagemap_util: Ensure proper cache lock management on free

Jouni Högander (2):
drm/i915/psr: Disable PSR on update_m_n and update_lrr
drm/i915/psr: Compute PSR entry_setup_frames into intel_crtc_state

Maarten Lankhorst (1):
drm: Fix use-after-free on framebuffers and property blobs when
calling drm_dev_unplug

Matthew Brost (4):
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

Pratap Nirujogi (1):
drm/amdgpu: Fix ISP segfault issue in kernel v7.0

Rahul Bukte (1):
drm/i915/gt: Check set_default_submission() before deferencing

Randy Dunlap (1):
drm/vmwgfx: fix kernel-doc warnings in vmwgfx_drv.h

Sanjay Yadav (1):
drm/xe: Fix missing runtime PM reference in ccs_mode_store

Srinivasan Shanmugam (1):
drm/amd/display: Fix DisplayID not-found handling in
parse_edid_displayid_vrr()

Umesh Nerlige Ramappa (1):
drm/xe/lrc: Fix uninitialized new_ts when capturing context timestamp

Xi Ruoyao (1):
drm/amd/display: Wrap dcn32_override_min_req_memclk() in
DC_FP_{START, END}

Zhanjun Dong (1):
drm/xe/guc: Ensure CT state transitions via STOP before DISABLED

drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c | 4 +
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 7 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | 2 +
drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 21 +++--
drivers/gpu/drm/amd/amdgpu/isp_v4_1_1.c | 4 +-
drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.c | 9 ++-
drivers/gpu/drm/amd/amdgpu/mmhub_v2_3.c | 3 +-
drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.c | 3 +-
drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_1.c | 3 +-
drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_2.c | 3 +-
drivers/gpu/drm/amd/amdgpu/mmhub_v4_1_0.c | 3 +-
drivers/gpu/drm/amd/amdgpu/mmhub_v4_2_0.c | 3 +-
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 6 +-
.../drm/amd/display/amdgpu_dm/amdgpu_dm_colorop.c | 6 +-
drivers/gpu/drm/amd/display/dc/clk_mgr/clk_mgr.c | 8 +-
.../amd/display/dc/resource/dcn32/dcn32_resource.c | 3 +
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c | 4 +-
drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c | 2 +-
drivers/gpu/drm/drm_file.c | 5 +-
drivers/gpu/drm/drm_mode_config.c | 9 ++-
drivers/gpu/drm/drm_pagemap_util.c | 14 ++--
.../drm/i915/display/intel_display_power_well.c | 2 +-
drivers/gpu/drm/i915/display/intel_display_types.h | 1 +
drivers/gpu/drm/i915/display/intel_dmc.c | 3 +-
drivers/gpu/drm/i915/display/intel_psr.c | 7 +-
drivers/gpu/drm/i915/gt/intel_engine_cs.c | 3 +-
drivers/gpu/drm/imagination/pvr_device.c | 17 ----
drivers/gpu/drm/imagination/pvr_power.c | 51 +++++++++---
drivers/gpu/drm/radeon/si_dpm.c | 4 +-
drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 93 +++++++++++++---------
drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 3 +-
drivers/gpu/drm/xe/xe_ggtt.c | 10 +--
drivers/gpu/drm/xe/xe_ggtt_types.h | 5 +-
drivers/gpu/drm/xe/xe_gt_ccs_mode.c | 2 +
drivers/gpu/drm/xe/xe_guc.c | 32 ++++++--
drivers/gpu/drm/xe/xe_guc.h | 1 +
drivers/gpu/drm/xe/xe_guc_ct.c | 1 +
drivers/gpu/drm/xe/xe_guc_submit.c | 86 ++++++++++++++------
drivers/gpu/drm/xe/xe_lrc.c | 4 +-
drivers/gpu/drm/xe/xe_oa.c | 7 +-
drivers/gpu/drm/xe/xe_pt.c | 38 ++++++---
41 files changed, 325 insertions(+), 167 deletions(-)