CVE-2026-63843 Overview
CVE-2026-63843 is a Linux kernel vulnerability in the AMD GPU (amdgpu) driver's JPEG v4.0.5 ring implementation. JPEG rings do not support 64-bit user fence writes, but the driver accepted command submissions (CS) containing user fences. A local, low-privileged attacker can submit crafted GPU command streams to trigger memory corruption or invalid writes through the JPEG ring. The upstream fix rejects any CS submission that includes user fences on JPEG v4.0.5 rings.
Critical Impact
A local, authenticated user with access to the amdgpu device node can trigger high-impact confidentiality, integrity, and availability effects through crafted JPEG ring submissions.
Affected Products
- Linux kernel builds including the drm/amdgpu/jpeg driver with JPEG v4.0.5 ring support
- Systems using AMD GPUs that expose the JPEG v4.0.5 engine to userspace via amdgpu
- Distributions shipping affected stable kernel branches prior to the referenced backport commits
Discovery Timeline
- 2026-07-19 - CVE-2026-63843 published to NVD
- 2026-07-20 - Last updated in NVD database
Technical Details for CVE-2026-63843
Vulnerability Analysis
The amdgpu kernel driver exposes multiple GPU engine rings to userspace through the command submission (CS) IOCTL interface. Userspace clients can request that the kernel write a 64-bit user fence value to a GPU-visible buffer upon ring completion. This mechanism is used for GPU-to-CPU synchronization.
The JPEG v4.0.5 engine ring does not implement 64-bit user fence writes. Despite this, the driver did not reject CS submissions that specified a user fence for JPEG rings. Processing such submissions leads to undefined behavior in the fence write path, producing memory safety issues reachable from an unprivileged local process holding a render node file descriptor.
The issue was resolved upstream by explicitly setting the no_user_fence flag for the JPEG v4.0.5 ring, causing the CS ioctl to reject any submission that carries a user fence for that ring. The fix was backported across multiple stable branches via commits f9bc5633, f26e3f71, b65b7f3f, and 424510b6.
Root Cause
The root cause is missing input validation [Improper Input Validation] in the amdgpu CS path. The driver failed to declare that the JPEG v4.0.5 ring lacks user fence support, so submissions with user fences were accepted and dispatched to a ring that could not safely handle them.
Attack Vector
Exploitation requires local access with permission to open the DRM render node (typically any logged-in user or a container with /dev/dri passthrough). No user interaction is required. The attacker constructs a DRM_IOCTL_AMDGPU_CS call targeting the JPEG v4.0.5 ring with a user fence attached, triggering the flaw entirely from userspace. No public proof-of-concept exploit or in-the-wild exploitation has been reported.
No verified exploit code is publicly available. Technical details are documented in the upstream fix commits referenced by Kernel Git Commit #f9bc5633 and Kernel Git Commit #424510b.
Detection Methods for CVE-2026-63843
Indicators of Compromise
- Unexpected amdgpu kernel warnings, oopses, or GPU ring resets referencing JPEG v4.0.5 in dmesg
- Local processes issuing DRM_IOCTL_AMDGPU_CS calls specifying user fences against JPEG rings
- Unprivileged user sessions repeatedly opening /dev/dri/renderD* followed by GPU driver faults
Detection Strategies
- Audit dmesg and journalctl -k for amdgpu fence, ring, or JPEG-related error messages on affected kernels
- Monitor for kernel taint flags or unexpected GPU engine hangs on AMD systems that expose JPEG v4.0.5
- Correlate DRM ioctl telemetry from eBPF-based sensors with local user activity to flag anomalous CS submissions
Monitoring Recommendations
- Enable kernel audit rules on openat of /dev/dri/renderD* and /dev/dri/card* device nodes
- Track kernel version and patch level inventory to identify unpatched hosts running affected amdgpu builds
- Alert on kernel crash artifacts (kdump, kernel-crashkernel) that reference amdgpu_cs or JPEG ring functions
How to Mitigate CVE-2026-63843
Immediate Actions Required
- Update to a Linux kernel version containing the backport commits f9bc5633, f26e3f71, b65b7f3f, or 424510b6
- Apply vendor-provided kernel updates from your distribution for the amdgpu driver
- Restrict access to DRM render nodes on multi-user systems by tightening video/render group membership
Patch Information
The fix sets no_user_fence for the JPEG v4.0.5 ring, causing the CS ioctl to reject submissions with user fences. Refer to Kernel Git Commit #f9bc5633, Kernel Git Commit #f26e3f71, Kernel Git Commit #b65b7f3f, and Kernel Git Commit #424510b for the stable branch backports.
Workarounds
- Blacklist the amdgpu module on systems that do not require GPU acceleration using modprobe.d configuration
- Remove untrusted local users from render and video groups to prevent direct access to /dev/dri/renderD*
- Isolate GPU-accelerated workloads in dedicated hosts or VMs until the kernel patch is deployed
# Verify installed kernel version and check for amdgpu patch presence
uname -r
modinfo amdgpu | grep -E '^(version|srcversion|filename):'
# Restrict render node access to a controlled group
sudo chgrp render /dev/dri/renderD*
sudo chmod 0660 /dev/dri/renderD*
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

