CVE-2025-40073
Publication date:
28/10/2025
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
drm/msm: Do not validate SSPP when it is not ready<br />
<br />
Current code will validate current plane and previous plane to<br />
confirm they can share a SSPP with multi-rect mode. The SSPP<br />
is already allocated for previous plane, while current plane<br />
is not associated with any SSPP yet. Null pointer is referenced<br />
when validating the SSPP of current plane. Skip SSPP validation<br />
for current plane.<br />
<br />
Unable to handle kernel NULL pointer dereference at virtual address 0000000000000020<br />
Mem abort info:<br />
ESR = 0x0000000096000004<br />
EC = 0x25: DABT (current EL), IL = 32 bits<br />
SET = 0, FnV = 0<br />
EA = 0, S1PTW = 0<br />
FSC = 0x04: level 0 translation fault<br />
Data abort info:<br />
ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000<br />
CM = 0, WnR = 0, TnD = 0, TagAccess = 0<br />
GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0<br />
user pgtable: 4k pages, 48-bit VAs, pgdp=0000000888ac3000<br />
[0000000000000020] pgd=0000000000000000, p4d=0000000000000000<br />
Internal error: Oops: 0000000096000004 [#1] SMP<br />
Modules linked in:<br />
CPU: 4 UID: 0 PID: 1891 Comm: modetest Tainted: G S 6.15.0-rc2-g3ee3f6e1202e #335 PREEMPT<br />
Tainted: [S]=CPU_OUT_OF_SPEC<br />
Hardware name: SM8650 EV1 rev1 4slam 2et (DT)<br />
pstate: 63400009 (nZCv daif +PAN -UAO +TCO +DIT -SSBS BTYPE=--)<br />
pc : dpu_plane_is_multirect_capable+0x68/0x90<br />
lr : dpu_assign_plane_resources+0x288/0x410<br />
sp : ffff800093dcb770<br />
x29: ffff800093dcb770 x28: 0000000000002000 x27: ffff000817c6c000<br />
x26: ffff000806b46368 x25: ffff0008013f6080 x24: ffff00080cbf4800<br />
x23: ffff000810842680 x22: ffff0008013f1080 x21: ffff00080cc86080<br />
x20: ffff000806b463b0 x19: ffff00080cbf5a00 x18: 00000000ffffffff<br />
x17: 707a5f657a696c61 x16: 0000000000000003 x15: 0000000000002200<br />
x14: 00000000ffffffff x13: 00aaaaaa00aaaaaa x12: 0000000000000000<br />
x11: ffff000817c6e2b8 x10: 0000000000000000 x9 : ffff80008106a950<br />
x8 : ffff00080cbf48f4 x7 : 0000000000000000 x6 : 0000000000000000<br />
x5 : 0000000000000000 x4 : 0000000000000438 x3 : 0000000000000438<br />
x2 : ffff800082e245e0 x1 : 0000000000000008 x0 : 0000000000000000<br />
Call trace:<br />
dpu_plane_is_multirect_capable+0x68/0x90 (P)<br />
dpu_crtc_atomic_check+0x5bc/0x650<br />
drm_atomic_helper_check_planes+0x13c/0x220<br />
drm_atomic_helper_check+0x58/0xb8<br />
msm_atomic_check+0xd8/0xf0<br />
drm_atomic_check_only+0x4a8/0x968<br />
drm_atomic_commit+0x50/0xd8<br />
drm_atomic_helper_update_plane+0x140/0x188<br />
__setplane_atomic+0xfc/0x148<br />
drm_mode_setplane+0x164/0x378<br />
drm_ioctl_kernel+0xc0/0x140<br />
drm_ioctl+0x20c/0x500<br />
__arm64_sys_ioctl+0xbc/0xf8<br />
invoke_syscall+0x50/0x120<br />
el0_svc_common.constprop.0+0x48/0xf8<br />
do_el0_svc+0x28/0x40<br />
el0_svc+0x30/0xd0<br />
el0t_64_sync_handler+0x144/0x168<br />
el0t_64_sync+0x198/0x1a0<br />
Code: b9402021 370fffc1 f9401441 3707ff81 (f94010a1)<br />
---[ end trace 0000000000000000 ]---<br />
<br />
Patchwork: https://patchwork.freedesktop.org/patch/669224/
Severity CVSS v4.0: Pending analysis
Last modification:
28/10/2025