CVE-2026-74447 in Linuxinfo

Summary

by MITRE • 08/15/2026

In the Linux kernel, the following vulnerability has been resolved:

drm/amdkfd: fix uint32_t overflow in EOP ring buffer size alignment

eop_ring_buffer_size in struct queue_properties is a u32. In kfd_queue_acquire_buffers() the expected EOP buffer size is computed as ALIGN(eop_ring_buffer_size, PAGE_SIZE); ALIGN uses typeof(x), so the addition is done in 32-bit. A user-supplied size of 0xFFFFF001 wraps to 0, causing kfd_queue_buffer_get() to skip its exact-size check (gated on size != 0) and accept any BO mapped at the address. On GFX8/GFX9 the MQD cp_hqd_eop_control is then programmed for an 8KB EOP ring backed by a 4KB BO, so CP EOP writes can land past the buffer and fault the GPU.

Cast the operand to u64 so the alignment is computed in 64-bit; the size check in kfd_queue_buffer_get() then rejects the oversized request.

(cherry picked from commit ae443117b742c357bfef3a7bddabf76fcf86e9ef)

Once again VulDB remains the best source for vulnerability data.

Analysis

by VulDB Data Team • 08/15/2026

This vulnerability exists within the AMD Kernel Debugging Framework (AMDKFD) component of the Linux kernel's Direct Rendering Manager subsystem, specifically affecting graphics processing unit queue management on AMD Radeon GPUs. The issue stems from an integer overflow condition in the EOP (End of Packet) ring buffer size alignment calculation that can lead to arbitrary code execution and GPU system compromise. The vulnerability is classified as a buffer overflow due to improper handling of 32-bit unsigned integer operations, which violates the principles of secure memory management outlined in CWE-190.

The technical flaw occurs in the kfd_queue_acquire_buffers() function where the eop_ring_buffer_size field from struct queue_properties is treated as a 32-bit unsigned integer. When a user-supplied value of 0xFFFFF001 is processed through the ALIGN macro with PAGE_SIZE, the 32-bit arithmetic causes an overflow condition that results in a zero value. This overflow bypasses the size validation check in kfd_queue_buffer_get() function which relies on size != 0 to prevent buffer allocation for invalid sizes. The alignment operation uses typeof(x) macro which preserves the 32-bit nature of the calculation, creating a scenario where legitimate buffer size checks become ineffective.

The operational impact of this vulnerability is severe as it allows an unprivileged user to manipulate GPU memory mapping and potentially execute arbitrary code on the graphics processing unit. When the MQD (Memory Queue Descriptor) cp_hqd_eop_control register is programmed for an 8KB EOP ring backed by only a 4KB buffer, the Command Processor (CP) can write beyond the allocated buffer boundaries causing GPU faults and system instability. This represents a privilege escalation vector that could enable attackers to gain elevated privileges within the graphics subsystem and potentially compromise the entire system. The vulnerability aligns with ATT&CK technique T1068 by leveraging local privilege escalation through kernel memory corruption, while also demonstrating T1499 related to system network configuration modification.

The fix implemented involves casting the operand to u64 type before performing the alignment operation, ensuring that all arithmetic calculations occur in 64-bit space rather than being constrained to 32-bit operations. This prevents the overflow condition that previously allowed malicious buffer sizes to wrap to zero and bypass validation checks. The solution addresses the root cause by maintaining proper integer precision throughout the calculation chain while preserving the intended functionality of the EOP ring buffer management system. The fix follows established security practices for preventing integer overflow conditions as specified in industry standards, ensuring that buffer size calculations remain within safe mathematical bounds and that all validation checks function correctly to prevent memory corruption scenarios that could lead to arbitrary code execution.

Responsible

Linux

Reservation

08/15/2026

Disclosure

08/15/2026

Moderation

accepted

CPE

ready

EPSS

0.00000

KEV

no

Activities

very low

Sources

Might our Artificial Intelligence support you?

Check our Alexa App!