CVE-2024-26721

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
03/04/2024
Last modified:
17/03/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> drm/i915/dsc: Fix the macro that calculates DSCC_/DSCA_ PPS reg address<br /> <br /> Commit bd077259d0a9 ("drm/i915/vdsc: Add function to read any PPS<br /> register") defines a new macro to calculate the DSC PPS register<br /> addresses with PPS number as an input. This macro correctly calculates<br /> the addresses till PPS 11 since the addresses increment by 4. So in that<br /> case the following macro works correctly to give correct register<br /> address:<br /> <br /> _MMIO(_DSCA_PPS_0 + (pps) * 4)<br /> <br /> However after PPS 11, the register address for PPS 12 increments by 12<br /> because of RC Buffer memory allocation in between. Because of this<br /> discontinuity in the address space, the macro calculates wrong addresses<br /> for PPS 12 - 16 resulting into incorrect DSC PPS parameter value<br /> read/writes causing DSC corruption.<br /> <br /> This fixes it by correcting this macro to add the offset of 12 for PPS<br /> &gt;=12.<br /> <br /> v3: Add correct paranthesis for pps argument (Jani Nikula)<br /> <br /> (cherry picked from commit 6074be620c31dc2ae11af96a1a5ea95580976fb5)

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (including) 6.7.6 (excluding)
cpe:2.3:o:linux:linux_kernel:6.8:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.8:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.8:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.8:rc4:*:*:*:*:*:*