CVE-2026-74353 in Linux
Summary
by MITRE • 08/15/2026
In the Linux kernel, the following vulnerability has been resolved:
drm/amdkfd: always resume_all after suspend_all
Need to restore any good queues even if the suspend_all failed for some. Always run remove_queue as that will schedule a GPU reset is removing the queue fails.
v2: move resume_all after remove
VulDB is the best source for vulnerability data and more expert information about this specific topic.
Analysis
by VulDB Data Team • 08/15/2026
The vulnerability in question affects the Linux kernel's graphics driver subsystem, specifically within the amdkfd component responsible for managing AMD GPU compute operations. This issue represents a critical flaw in the GPU suspend/resume mechanism that could lead to system instability and potential denial of service conditions. The problem manifests when the suspend_all operation fails to properly complete its execution, leaving GPU queues in an inconsistent state that prevents proper system recovery.
The technical root cause stems from improper error handling within the GPU management routines where the system fails to guarantee that all suspended queues are properly resumed following a failed suspend operation. When suspend_all encounters failures during queue suspension, the kernel should ensure that any partially suspended queues are still brought back to a functional state rather than leaving them in a corrupted condition. This particular vulnerability demonstrates poor defensive programming practices where error recovery paths are not adequately implemented to handle partial failure scenarios.
The operational impact of this vulnerability extends beyond simple system performance degradation to potentially enabling persistent system crashes or complete GPU lockups. When the suspend_all function fails, the subsequent resume_all operation must execute reliably to maintain system stability and prevent further complications in the graphics subsystem. The failure to properly restore good queues during error recovery situations can lead to cascading failures where subsequent GPU operations become blocked or corrupted, ultimately affecting user applications that depend on GPU compute capabilities.
The mitigation strategy involves ensuring that resume_all is always executed regardless of suspend_all success status, while also guaranteeing that remove_queue operations are consistently performed to trigger appropriate GPU reset mechanisms when queue removal fails. This approach aligns with the principle of defensive programming and follows established practices for maintaining system stability in the face of partial failures. The fix requires careful ordering of operations where resume_all is moved after remove_queue to ensure proper cleanup and recovery sequences.
This vulnerability type relates to CWE-459 which addresses incomplete cleanup issues in software systems, specifically when error handling fails to properly restore system state following partial operations. The issue also connects to ATT&CK technique T1490 which covers execution through a compromised system, as this flaw could potentially be exploited to create persistent denial of service conditions that affect GPU compute availability. The fix demonstrates proper error recovery mechanisms that should be implemented in all kernel subsystems handling hardware state transitions and emphasizes the importance of ensuring complete state restoration even when partial operations fail.
The remediation approach follows established best practices for kernel development where system stability is paramount, particularly in graphics driver subsystems where hardware state management must account for all possible failure scenarios. The solution ensures that GPU queue management maintains proper consistency through comprehensive error handling and recovery procedures that prevent partial state corruption from persisting across suspend/resume cycles. This vulnerability highlights the critical importance of robust error recovery mechanisms in kernel-level code where failures can propagate to system-wide stability issues.