CVE-2026-68274 Overview
CVE-2026-68274 is a heap buffer overflow in the Linux kernel's drm/xe/guc driver. The flaw affects the steered register list allocation logic used by Intel Xe graphics hardware. The allocation size is calculated using only the geometry Dual Sub-Slice (DSS) mask, while the population loop iterates over the union of both geometry and compute DSS masks. On platforms with compute-only DSS bits set, the loop writes past the allocated buffer and corrupts adjacent slab objects. The corruption manifests as list_del failures and SLUB redzone overwrites during drm_managed_release at device unbind.
Critical Impact
Local attackers with access to the affected graphics device can trigger heap corruption in kernel memory, potentially leading to privilege escalation or denial of service.
Affected Products
- Linux kernel drm/xe driver (Intel Xe GPU) prior to the fix commit 0a78a44f4901
- Stable kernel branches receiving backports via commits 632ecc90, a9a020f3, and b485bfb4
- Systems using Intel graphics platforms with compute-only DSS bits in the fuse topology
Discovery Timeline
- 2026-08-10 - CVE-2026-68274 published to NVD
- 2026-08-13 - Last updated in NVD database
Technical Details for CVE-2026-68274
Vulnerability Analysis
The vulnerability resides in the GuC (Graphics micro-Controller) steered register list allocation code within the Intel Xe DRM driver. The driver allocates an extarray sized by counting only the bits set in gt->fuse_topo.g_dss_mask (geometry DSS mask) and multiplying by steer_reg_num. The subsequent population loop uses the for_each_dss_steering() macro, which internally expands to for_each_dss(), iterating over the union of g_dss_mask and c_dss_mask (compute DSS mask).
On hardware SKUs where the compute mask contains bits not present in the geometry mask, the loop performs writes beyond the allocated buffer's boundary. These out-of-bounds writes overwrite adjacent SLUB allocator objects, including the drmreslist_head structures of neighboring drm_managed allocations. The corruption remains latent until device unbind, when drm_managed_release walks the corrupted list and triggers list_del corruption warnings or panics.
Root Cause
The root cause is a mismatch between the allocation sizing expression and the iteration pattern. The size calculation only accounts for g_dss_mask weight, while the write loop covers the broader g_dss_mask | c_dss_mask set. This is a classic out-of-bounds write [CWE-787] driven by inconsistent boundary computation.
Attack Vector
Exploitation requires local access with permissions to interact with the Xe DRM device node. An attacker triggering device bind and unbind operations on vulnerable hardware can force the corrupted allocation path to execute. The corruption of adjacent slab objects provides a primitive for further kernel memory manipulation. The patch resolves the issue by computing the allocation size using bitmap_weighted_or() on both DSS masks, aligning the size with the iteration range of for_each_dss_steering(). See the upstream fix in Kernel Git Commit 632ecc90 for full technical details.
Detection Methods for CVE-2026-68274
Indicators of Compromise
- Kernel log entries showing list_del corruption warnings during Xe driver unbind operations
- SLUB redzone overwrite messages referencing drmres allocations
- Kernel panics or oopses originating from drm_managed_release on affected Intel Xe platforms
Detection Strategies
- Monitor dmesg and /var/log/kern.log for SLUB debug output referencing drm/xe allocation slabs
- Enable CONFIG_SLUB_DEBUG and CONFIG_DEBUG_LIST on test systems to surface corruption early
- Audit installed kernel versions against the fix commits 632ecc90e1ca, a9a020f3c11e, and b485bfb45555
Monitoring Recommendations
- Centralize kernel log collection and alert on list_del, KASAN, or SLUB corruption signatures
- Track driver bind/unbind events on hosts with Intel Xe graphics hardware
- Correlate module load events for xe.ko with subsequent kernel warnings to identify affected systems
How to Mitigate CVE-2026-68274
Immediate Actions Required
- Apply the stable kernel updates containing commits 632ecc90, a9a020f3, or b485bfb4 as backported by your distribution
- Inventory systems using the Intel Xe GPU driver and prioritize patching hosts running affected hardware
- Restrict access to DRM device nodes so that only trusted local users can bind or unbind the Xe driver
Patch Information
The upstream fix is cherry-picked from commit 0a78a44f4901aa6c9263e66be7fce02282f1109f. It replaces the size calculation with bitmap_weighted_or() over both g_dss_mask and c_dss_mask, matching the iteration performed by for_each_dss_steering(). Stable backports are available at Kernel Git Commit 632ecc90, Kernel Git Commit a9a020f3, and Kernel Git Commit b485bfb4.
Workarounds
- Blacklist the xe kernel module on affected systems where Intel Xe graphics are not required
- Prevent unprivileged users from triggering driver bind/unbind cycles via udev and sysfs permission hardening
- Restrict access to /dev/dri/* device nodes through group membership and mode enforcement
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

