CVE-2021-47354
📋 TL;DR
This vulnerability in the Linux kernel's DRM scheduler could allow data corruption when GPU jobs are terminated prematurely. It affects systems using the Direct Rendering Manager (DRM) subsystem for graphics processing. The issue occurs when dependencies aren't properly waited for before killing jobs.
💻 Affected Systems
- Linux kernel with DRM scheduler
📦 What is this software?
Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →⚠️ Risk & Real-World Impact
Worst Case
System crashes, data corruption, or potential privilege escalation leading to full system compromise.
Likely Case
System instability, graphical artifacts, application crashes, or data corruption in GPU-accelerated workloads.
If Mitigated
Reduced performance or application crashes without data loss if proper isolation exists.
🎯 Exploit Status
Requires ability to submit GPU jobs; likely requires local access or compromised application.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Kernel versions containing the git commits referenced in the CVE
Vendor Advisory: https://git.kernel.org/stable/c/0687411e2a8858262de2fc4a1d576016fd77292e
Restart Required: Yes
Instructions:
1. Update Linux kernel to patched version. 2. Check distribution-specific advisories. 3. Reboot system after kernel update.
🔧 Temporary Workarounds
Disable GPU acceleration
linuxTemporarily disable DRM/GPU acceleration to prevent exploitation
echo 'blacklist drm' >> /etc/modprobe.d/blacklist.conf
update-initramfs -u
🧯 If You Can't Patch
- Restrict local user access to minimize attack surface
- Implement strict application control to prevent untrusted GPU job submission
🔍 How to Verify
Check if Vulnerable:
Check kernel version and compare with patched versions in git commits: uname -r
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version is updated beyond vulnerable commits and system is stable under GPU load
📡 Detection & Monitoring
Log Indicators:
- Kernel oops messages
- DRM subsystem errors
- GPU-related crashes in dmesg
Network Indicators:
- None - local vulnerability
SIEM Query:
source="kernel" AND ("drm" OR "GPU" OR "scheduler") AND ("panic" OR "oops" OR "corruption")
🔗 References
- https://git.kernel.org/stable/c/0687411e2a8858262de2fc4a1d576016fd77292e
- https://git.kernel.org/stable/c/0b10ab80695d61422337ede6ff496552d8ace99d
- https://git.kernel.org/stable/c/50d7e03ad487cc45fc85164a299b945a41756ac0
- https://git.kernel.org/stable/c/a8e23e3c1ff9ec598ab1b3a941ace6045027781f
- https://git.kernel.org/stable/c/c32d0f0e164ffab2a56c7cf8e612584b4b740e2e
- https://git.kernel.org/stable/c/0687411e2a8858262de2fc4a1d576016fd77292e
- https://git.kernel.org/stable/c/0b10ab80695d61422337ede6ff496552d8ace99d
- https://git.kernel.org/stable/c/50d7e03ad487cc45fc85164a299b945a41756ac0
- https://git.kernel.org/stable/c/a8e23e3c1ff9ec598ab1b3a941ace6045027781f
- https://git.kernel.org/stable/c/c32d0f0e164ffab2a56c7cf8e612584b4b740e2e