CVE-2026-46197 Overview
CVE-2026-46197 is a Linux kernel vulnerability in the AMD Kernel Fusion Driver (amdkfd) Shared Virtual Memory (SVM) ioctl handler. The flaw stems from missing validation of the user-supplied nattr field against the actual buffer size. An attacker with local access can supply a crafted attribute count to trigger out-of-bounds buffer access in kernel memory. The issue has been resolved upstream by validating the nattr field before processing attributes. This vulnerability affects systems using AMD GPUs with the kernel-mode driver enabled for compute workloads.
Critical Impact
A local user can issue a crafted SVM ioctl with a manipulated attribute count to cause out-of-bounds reads or writes in kernel memory, leading to information disclosure, denial of service, or potential privilege escalation.
Affected Products
- Linux kernel versions containing the unpatched drm/amdkfd SVM ioctl handler
- Systems using AMD GPU compute (ROCm / KFD) with SVM enabled
- Distributions shipping affected stable kernel branches prior to backport of commit 5eca8bfdfa45
Discovery Timeline
- 2026-05-28 - CVE-2026-46197 published to NVD
- 2026-05-28 - Last updated in NVD database
Technical Details for CVE-2026-46197
Vulnerability Analysis
The vulnerability resides in the AMD Kernel Fusion Driver SVM ioctl path within drm/amdkfd. The SVM ioctl accepts a user-controlled attribute count (nattr) describing how many attribute entries the kernel should process from an accompanying buffer. The driver did not validate that nattr was consistent with the actual size of the user-supplied buffer. As a result, the kernel iterated past the end of the buffer, performing out-of-bounds memory access while parsing attribute entries.
This class of issue maps to Out-of-Bounds Read and Out-of-Bounds Write [CWE-125 / CWE-787], depending on the code path reached during attribute processing. Because the boundary check was absent, the trust boundary between userspace and the kernel SVM ioctl interface was crossed without enforcement.
Root Cause
The root cause is missing input validation of an integer count field against the size of its associated data buffer. The handler trusted nattr from userspace and used it as a loop bound for attribute parsing. The upstream fix, cherry-picked from commit 5eca8bfdfa456c3304ca77523718fe24254c172f, adds an explicit check that nattr cannot exceed the entries available in the buffer.
Attack Vector
Exploitation requires local access to a system with the amdkfd driver loaded and the /dev/kfd device accessible to the attacker's user account. The attacker invokes the SVM ioctl with a crafted nattr value larger than the buffer can hold. Processing this request forces the kernel to read or write memory adjacent to the supplied buffer, which an attacker may shape to leak kernel data or corrupt adjacent kernel structures.
No verified public exploit code is available for this CVE. Refer to the upstream kernel commit for technical details of the fix.
Detection Methods for CVE-2026-46197
Indicators of Compromise
- Unexpected kernel oops, BUG: messages, or KASAN reports referencing svm_ioctl, kfd_ioctl_svm, or related amdkfd symbols in dmesg
- Crashes or hangs of processes interacting with /dev/kfd on systems with AMD GPUs
- Unprivileged processes issuing high volumes of SVM ioctls against the KFD device
Detection Strategies
- Enable CONFIG_KASAN on test or canary kernels to surface out-of-bounds access in the amdkfd SVM path during fuzzing or workload testing
- Audit auditd and syscall telemetry for ioctl calls targeting /dev/kfd originating from non-GPU-workload user contexts
- Compare the running kernel version and amdgpu/amdkfd module commit hash against patched stable branches
Monitoring Recommendations
- Forward kernel ring buffer (dmesg) and journald kernel facility logs to a central data lake and alert on amdkfd faults
- Track package and kernel version inventory across Linux endpoints to confirm patch deployment status
- Monitor /dev/kfd device permissions and the set of users with access to GPU compute interfaces
How to Mitigate CVE-2026-46197
Immediate Actions Required
- Apply the latest stable kernel update from your Linux distribution containing the drm/amdkfd SVM nattr validation fix
- Identify systems with the amdkfd module loaded using lsmod | grep amdkfd and prioritize them for patching
- Restrict access to /dev/kfd to trusted users and service accounts that require GPU compute
Patch Information
The fix is upstream as a cherry-pick of commit 5eca8bfdfa456c3304ca77523718fe24254c172f and is available across multiple stable branches. Relevant stable commits include 045e0ff208f0, 6abd3a4417cb, 91c6dc5a4169, ccd060b5c7cc, and db9530a9873a. Install the vendor-supplied kernel package that includes one of these commits and reboot.
Workarounds
- Unload the amdkfd module with modprobe -r amdkfd on systems that do not require AMD GPU compute workloads
- Blacklist the amdkfd module via /etc/modprobe.d/ where GPU compute is not used
- Tighten permissions on /dev/kfd so that only authorized service accounts can issue ioctls to the device
# Confirm the running kernel and amdkfd module status
uname -r
lsmod | grep amdkfd
# Restrict access to the KFD device (example: group-based access)
sudo chgrp kfd-users /dev/kfd
sudo chmod 0660 /dev/kfd
# Disable the amdkfd module on systems that do not need GPU compute
echo 'blacklist amdkfd' | sudo tee /etc/modprobe.d/disable-amdkfd.conf
sudo update-initramfs -u
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

