drm/amd/display: Do not skip unrelated mode changes in DSC validation
Key facts
- Attack vector
- Local
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Partial Red Hat: 34 fixed, 1 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and Red Hat. Impact type from CWE-416 and the CVSS impact.
Summary
In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Do not skip unrelated mode changes in DSC validation Starting with commit 17ce8a6907f7 ("drm/amd/display: Add dsc pre-validation in atomic check"), amdgpu resets the CRTC state mode_changed flag to false when recomputing the DSC configuration results in no timing change for a particular stream. However, this is incorrect in scenarios where a change in MST/DSC configuration happens in the same KMS commit as another (unrelated) mode change. For example, the integrated panel of a laptop may be configured differently (e.g., HDR enabled/disabled) depending on whether external screens are attached. In this case, plugging in external DP-MST screens may result in the mode_changed flag being dropped incorrectly for the integrated panel if its DSC configuration did not change during precomputation in pre_validate_dsc(). At this point, however, dm_update_crtc_state() has already created new streams for CRTCs with DSC-independent mode changes. In turn, amdgpu_dm_commit_streams() will never release the old stream, resulting in a memory leak. amdgpu_dm_atomic_commit_tail() will never acquire a reference to the new stream either, which manifests as a use-after-free when the stream gets disabled later on: BUG: KASAN: use-after-free in dc_stream_release+0x25/0x90 [amdgpu] Write of size 4 at addr ffff88813d836524 by task kworker/9:9/29977 Workqueue: events drm_mode_rmfb_work_fn Call Trace: <TASK> dump_stack_lvl+0x6e/0xa0 print_address_description.constprop.0+0x88/0x320 ? dc_stream_release+0x25/0x90 [amdgpu] print_report+0xfc/0x1ff ? srso_alias_return_thunk+0x5/0xfbef5 ? __virt_addr_valid+0x225/0x4e0 ? dc_stream_release+0x25/0x90 [amdgpu] kasan_report+0xe1/0x180 ? dc_stream_release+0x25/0x90 [amdgpu] kasan_check_range+0x125/0x200 dc_stream_release+0x25/0x90 [amdgpu] dc_state_destruct+0x14d/0x5c0 [amdgpu] dc_state_release.part.0+0x4e/0x130 [amdgpu] dm_atomic_destroy_state+0x3f/0x70 [amdgpu] drm_atomic_state_default_clear+0x8ee/0xf30 ? drm_mode_object_put.part.0+0xb1/0x130 __drm_atomic_state_free+0x15c/0x2d0 atomic_remove_fb+0x67e/0x980 Since there is no reliable way of figuring out whether a CRTC has unrelated mode changes pending at the time of DSC validation, remember the value of the mode_changed flag from before the point where a CRTC was marked as potentially affected by a change in DSC configuration. Reset the mode_changed flag to this earlier value instead in pre_validate_dsc(). (cherry picked from commit cc7c7121ae082b7b82891baa7280f1ff2608f22b)
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Linux | Linux | 5.18 and later | 6.1.175, 6.6.140, 6.12.80, 6.18.21, 6.19.11, 7.0 | Patch available | CNA |
- Linux VendorLinux Affected 5.18 and later Fixed in 6.1.175, 6.6.140, 6.12.80, 6.18.21, 6.19.11, 7.0 Patch available CNA
CPE configurations NVD · 9
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.18.1 to before 6.12.80; 6.13 to before 6.18.21; 6.19 to before 6.19.11 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:5.18:-:*:*:*:*:*:* | 5.18 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:* | 7.0 rc1 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:* | 7.0 rc2 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:* | 7.0 rc3 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:7.0:rc4:*:*:*:*:*:* | 7.0 rc4 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:7.0:rc5:*:*:*:*:*:* | 7.0 rc5 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:7.0:rc6:*:*:*:*:*:* | 7.0 rc6 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:7.0:rc7:*:*:*:*:*:* | 7.0 rc7 | Vulnerable | Linux |
- cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* Versions 5.18.1 to before 6.12.80; 6.13 to before 6.18.21; 6.19 to before 6.19.11 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:5.18:-:*:*:*:*:*:* Versions 5.18 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:* Versions 7.0 rc1 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:* Versions 7.0 rc2 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:* Versions 7.0 rc3 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:7.0:rc4:*:*:*:*:*:* Versions 7.0 rc4 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:7.0:rc5:*:*:*:*:*:* Versions 7.0 rc5 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:7.0:rc6:*:*:*:*:*:* Versions 7.0 rc6 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:7.0:rc7:*:*:*:*:*:* Versions 7.0 rc7 Vulnerable ·Linux
Remediation
- Fix · CNA Linux (Linux) Fixed in 6.1.175, 6.6.140, 6.12.80, 6.18.21, 6.19.11, 7.0
Red Hat 10 advisories
- RHSA-2026:55445 Released 2026-08-17 · Red Hat rating Importantkernel security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream EUS (v. 10.0) kernel-64k-debug-devel-6.12.0-55.98.1.el10_0, kernel-64k-debug-devel-matched-6.12.0-55.98.1.el10_0, kernel-64k-devel-6.12.0-55.98.1.el10_0 +12
- Red Hat Enterprise Linux BaseOS EUS (v. 10.0) kernel-6.12.0-55.98.1.el10_0, kernel-64k-6.12.0-55.98.1.el10_0, kernel-64k-core-6.12.0-55.98.1.el10_0 +28
- Red Hat Enterprise Linux CodeReady Linux Builder EUS (v. 10.0) kernel-tools-libs-devel-6.12.0-55.98.1.el10_0, libperf-6.12.0-55.98.1.el10_0
- Red Hat Enterprise Linux Real Time EUS (v. 10.0) kernel-rt-6.12.0-55.98.1.el10_0, kernel-rt-64k-6.12.0-55.98.1.el10_0, kernel-rt-64k-core-6.12.0-55.98.1.el10_0 +21
- Red Hat Enterprise Linux Real Time for NFV EUS (v. 10.0) kernel-rt-6.12.0-55.98.1.el10_0, kernel-rt-core-6.12.0-55.98.1.el10_0, kernel-rt-debug-6.12.0-55.98.1.el10_0 +11
- RHSA-2026:53330 Released 2026-08-11 · Red Hat rating Importantkernel security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream (v. 10) kernel-64k-debug-devel-6.12.0-211.46.1.el10_2, kernel-64k-debug-devel-matched-6.12.0-211.46.1.el10_2, kernel-64k-devel-6.12.0-211.46.1.el10_2 +12
- Red Hat Enterprise Linux BaseOS (v. 10) kernel-6.12.0-211.46.1.el10_2, kernel-64k-6.12.0-211.46.1.el10_2, kernel-64k-core-6.12.0-211.46.1.el10_2 +29
- Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) kernel-tools-libs-devel-6.12.0-211.46.1.el10_2, libperf-6.12.0-211.46.1.el10_2
- Red Hat Enterprise Linux Real Time (v. 10) kernel-rt-6.12.0-211.46.1.el10_2, kernel-rt-64k-6.12.0-211.46.1.el10_2, kernel-rt-64k-core-6.12.0-211.46.1.el10_2 +21
- Red Hat Enterprise Linux Real Time for NFV (v. 10) kernel-rt-6.12.0-211.46.1.el10_2, kernel-rt-core-6.12.0-211.46.1.el10_2, kernel-rt-debug-6.12.0-211.46.1.el10_2 +9
- RHSA-2026:47632 Released 2026-07-30 · Red Hat rating Importantkernel-rt security, bug fix, and enhancement update
- Red Hat Enterprise Linux Real Time E4S (v.9.2) kernel-rt-5.14.0-284.183.1.rt14.468.el9_2, kernel-rt-core-5.14.0-284.183.1.rt14.468.el9_2, kernel-rt-debug-5.14.0-284.183.1.rt14.468.el9_2 +9
- Red Hat Enterprise Linux Real Time for NFV E4S (v.9.2) kernel-rt-5.14.0-284.183.1.rt14.468.el9_2, kernel-rt-core-5.14.0-284.183.1.rt14.468.el9_2, kernel-rt-debug-5.14.0-284.183.1.rt14.468.el9_2 +11
Show 7 more Red Hat advisories
- RHSA-2026:47739 Released 2026-07-29 · Red Hat rating Importantkernel security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream E4S (v.9.2) kernel-64k-debug-devel-5.14.0-284.183.1.el9_2, kernel-64k-debug-devel-matched-5.14.0-284.183.1.el9_2, kernel-64k-devel-5.14.0-284.183.1.el9_2 +10
- Red Hat Enterprise Linux BaseOS E4S (v.9.2) bpftool-7.0.0-284.183.1.el9_2, kernel-5.14.0-284.183.1.el9_2, kernel-64k-5.14.0-284.183.1.el9_2 +29
- RHSA-2026:47869 Released 2026-07-29 · Red Hat rating Importantkernel security update
- Red Hat Enterprise Linux BaseOS E4S (v.8.8) bpftool-4.18.0-477.156.1.el8_8, kernel-4.18.0-477.156.1.el8_8, kernel-abi-stablelists-4.18.0-477.156.1.el8_8 +14
- Red Hat Enterprise Linux BaseOS TUS (v.8.8) bpftool-4.18.0-477.156.1.el8_8, kernel-4.18.0-477.156.1.el8_8, kernel-abi-stablelists-4.18.0-477.156.1.el8_8 +14
- RHSA-2026:44385 Released 2026-07-23 · Red Hat rating Importantkernel security, bug fix, and enhancement update
- Red Hat CodeReady Linux Builder EUS (v.9.6) kernel-tools-libs-devel-5.14.0-570.129.1.el9_6, libperf-5.14.0-570.129.1.el9_6
- Red Hat Enterprise Linux AppStream EUS (v.9.6) kernel-64k-debug-devel-5.14.0-570.129.1.el9_6, kernel-64k-debug-devel-matched-5.14.0-570.129.1.el9_6, kernel-64k-devel-5.14.0-570.129.1.el9_6 +12
- Red Hat Enterprise Linux BaseOS EUS (v.9.6) kernel-5.14.0-570.129.1.el9_6, kernel-64k-5.14.0-570.129.1.el9_6, kernel-64k-core-5.14.0-570.129.1.el9_6 +28
- Red Hat Enterprise Linux Real Time EUS (v.9.6) kernel-rt-5.14.0-570.129.1.el9_6, kernel-rt-64k-5.14.0-570.129.1.el9_6, kernel-rt-64k-core-5.14.0-570.129.1.el9_6 +21
- Red Hat Enterprise Linux Real Time for NFV EUS (v.9.6) kernel-rt-5.14.0-570.129.1.el9_6, kernel-rt-core-5.14.0-570.129.1.el9_6, kernel-rt-debug-5.14.0-570.129.1.el9_6 +11
- RHSA-2026:43231 Released 2026-07-22 · Red Hat rating Importantkernel security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream E4S (v.9.4) kernel-64k-debug-devel-5.14.0-427.139.1.el9_4, kernel-64k-debug-devel-matched-5.14.0-427.139.1.el9_4, kernel-64k-devel-5.14.0-427.139.1.el9_4 +11
- Red Hat Enterprise Linux BaseOS E4S (v.9.4) bpftool-7.3.0-427.139.1.el9_4, kernel-5.14.0-427.139.1.el9_4, kernel-64k-5.14.0-427.139.1.el9_4 +29
- Red Hat Enterprise Linux Real Time E4S (v.9.4) kernel-rt-5.14.0-427.139.1.el9_4, kernel-rt-core-5.14.0-427.139.1.el9_4, kernel-rt-debug-5.14.0-427.139.1.el9_4 +9
- Red Hat Enterprise Linux Real Time for NFV E4S (v.9.4) kernel-rt-5.14.0-427.139.1.el9_4, kernel-rt-core-5.14.0-427.139.1.el9_4, kernel-rt-debug-5.14.0-427.139.1.el9_4 +11
- RHSA-2026:30848 Released 2026-06-29 · Red Hat rating Importantkernel security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream (v. 9) kernel-64k-debug-devel-5.14.0-687.19.1.el9_8, kernel-64k-debug-devel-matched-5.14.0-687.19.1.el9_8, kernel-64k-devel-5.14.0-687.19.1.el9_8 +12
- Red Hat Enterprise Linux BaseOS (v. 9) kernel-5.14.0-687.19.1.el9_8, kernel-64k-5.14.0-687.19.1.el9_8, kernel-64k-core-5.14.0-687.19.1.el9_8 +28
- Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) kernel-tools-libs-devel-5.14.0-687.19.1.el9_8, libperf-5.14.0-687.19.1.el9_8
- Red Hat Enterprise Linux Real Time (v. 9) kernel-rt-5.14.0-687.19.1.el9_8, kernel-rt-64k-5.14.0-687.19.1.el9_8, kernel-rt-64k-core-5.14.0-687.19.1.el9_8 +21
- Red Hat Enterprise Linux Real Time for NFV (v. 9) kernel-rt-5.14.0-687.19.1.el9_8, kernel-rt-core-5.14.0-687.19.1.el9_8, kernel-rt-debug-5.14.0-687.19.1.el9_8 +9
- RHSA-2026:27353 Released 2026-06-19 · Red Hat rating Importantkernel security, bug fix, and enhancement update
- Red Hat Enterprise Linux BaseOS (v. 8) bpftool-4.18.0-553.136.1.el8_10, kernel-4.18.0-553.136.1.el8_10, kernel-abi-stablelists-4.18.0-553.136.1.el8_10 +19
- Red Hat Enterprise Linux CRB (v. 8) kernel-tools-libs-devel-4.18.0-553.136.1.el8_10
- RHSA-2026:27354 Released 2026-06-19 · Red Hat rating Importantkernel-rt security, bug fix, and enhancement update
- Red Hat Enterprise Linux NFV (v. 8) kernel-rt-4.18.0-553.136.1.rt7.477.el8_10, kernel-rt-core-4.18.0-553.136.1.rt7.477.el8_10, kernel-rt-debug-4.18.0-553.136.1.rt7.477.el8_10 +9
- Red Hat Enterprise Linux RT (v. 8) kernel-rt-4.18.0-553.136.1.rt7.477.el8_10, kernel-rt-core-4.18.0-553.136.1.rt7.477.el8_10, kernel-rt-debug-4.18.0-553.136.1.rt7.477.el8_10 +7
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Enterprise Linux 9 | Affected | No fix yet |
| Red Hat CodeReady Linux Builder EUS (v.9.6) | Fixed | RHSA-2026:44385 |
| Red Hat Enterprise Linux AppStream (v. 10) | Fixed | RHSA-2026:53330 |
| Red Hat Enterprise Linux AppStream (v. 9) | Fixed | RHSA-2026:30848 |
| Red Hat Enterprise Linux AppStream E4S (v.9.2) | Fixed | RHSA-2026:47739 |
| Red Hat Enterprise Linux AppStream E4S (v.9.4) | Fixed | RHSA-2026:43231 |
| Red Hat Enterprise Linux AppStream EUS (v. 10.0) | Fixed | RHSA-2026:55445 |
| Red Hat Enterprise Linux AppStream EUS (v.9.6) | Fixed | RHSA-2026:44385 |
| Red Hat Enterprise Linux BaseOS (v. 10) | Fixed | RHSA-2026:53330 |
| Red Hat Enterprise Linux BaseOS (v. 8) | Fixed | RHSA-2026:27353 |
| Red Hat Enterprise Linux BaseOS (v. 9) | Fixed | RHSA-2026:30848 |
| Red Hat Enterprise Linux BaseOS E4S (v.8.8) | Fixed | RHSA-2026:47869 |
| Red Hat Enterprise Linux BaseOS E4S (v.9.2) | Fixed | RHSA-2026:47739 |
| Red Hat Enterprise Linux BaseOS E4S (v.9.4) | Fixed | RHSA-2026:43231 |
| Red Hat Enterprise Linux BaseOS EUS (v. 10.0) | Fixed | RHSA-2026:55445 |
| Red Hat Enterprise Linux BaseOS EUS (v.9.6) | Fixed | RHSA-2026:44385 |
| Red Hat Enterprise Linux BaseOS TUS (v.8.8) | Fixed | RHSA-2026:47869 |
| Red Hat Enterprise Linux CRB (v. 8) | Fixed | RHSA-2026:27353 |
| Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) | Fixed | RHSA-2026:53330 |
| Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) | Fixed | RHSA-2026:30848 |
| Red Hat Enterprise Linux CodeReady Linux Builder EUS (v. 10.0) | Fixed | RHSA-2026:55445 |
| Red Hat Enterprise Linux NFV (v. 8) | Fixed | RHSA-2026:27354 |
| Red Hat Enterprise Linux RT (v. 8) | Fixed | RHSA-2026:27354 |
| Red Hat Enterprise Linux Real Time (v. 10) | Fixed | RHSA-2026:53330 |
| Red Hat Enterprise Linux Real Time (v. 9) | Fixed | RHSA-2026:30848 |
| Red Hat Enterprise Linux Real Time E4S (v.9.2) | Fixed | RHSA-2026:47632 |
| Red Hat Enterprise Linux Real Time E4S (v.9.4) | Fixed | RHSA-2026:43231 |
| Red Hat Enterprise Linux Real Time EUS (v. 10.0) | Fixed | RHSA-2026:55445 |
| Red Hat Enterprise Linux Real Time EUS (v.9.6) | Fixed | RHSA-2026:44385 |
| Red Hat Enterprise Linux Real Time for NFV (v. 10) | Fixed | RHSA-2026:53330 |
| Red Hat Enterprise Linux Real Time for NFV (v. 9) | Fixed | RHSA-2026:30848 |
| Red Hat Enterprise Linux Real Time for NFV E4S (v.9.2) | Fixed | RHSA-2026:47632 |
| Red Hat Enterprise Linux Real Time for NFV E4S (v.9.4) | Fixed | RHSA-2026:43231 |
| Red Hat Enterprise Linux Real Time for NFV EUS (v. 10.0) | Fixed | RHSA-2026:55445 |
| Red Hat Enterprise Linux Real Time for NFV EUS (v.9.6) | Fixed | RHSA-2026:44385 |
Not affected: 2 products
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 7
Timeline
- 2026-10-02 Threatist record created from CVE-2026-31488
- 2026-10-03 Alias added: GHSA-wg67-7cxp-7wp8
- 2026-10-16 CISA SSVC decision points changed
- 2026-10-19 Weakness changed · CISA ADP
References
Patch 4
More Linux Kernel vulnerabilities
- TI-2025-26358 tls: fix handling of zero-length records on the rx_list KEVCVSS 3.1CRITICAL 9.8
- TI-2026-38352 netfilter: bridge: make ebt_snat ARP rewrite writable KEVCVSS 3.1HIGH 8.8
- TI-2013-05264 The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the… KEVCVSS 3.1HIGH 8.8
- TI-2022-00125 Integer overflow in kernel KEVCVSS 3.1HIGH 8.4
- TI-2013-01864 The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9… KEVCVSS 3.1HIGH 8.4
- TI-2021-05514 Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACE KEVCVSS 3.1HIGH 8.3
Sources
- CVE-2026-31488 · CVE Program
- CVE-2026-31488 · NVD
- FIRST EPSS
- GHSA-wg67-7cxp-7wp8 · GitHub Advisory Database · CC BY 4.0
- CVE-2026-31488 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences