{"id":"CVE-2026-74447","title":"drm/amdkfd: fix uint32_t overflow in EOP ring buffer size alignment","summary":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/amdkfd: fix uint32_t overflow in EOP ring buffer size alignment\n\neop_ring_buffer_size in struct queue_properties is a u32. In\nkfd_queue_acquire_buffers() the expect…","severity":"high","cvss":7.8,"cvssVector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","cvssSource":"cna","vendor":"Linux","product":"Linux","affected":["Linux >= ee0dc6c66a913260311876a4b2b53fe0b9bc3f94 < 273548eb997c6be85230c1236b18784b09f6203c","Linux >= acfc84cfa70aca5b970faf152979bc97b9f8b0c0 < 6dc0b4b39ed4f11ef70f76ecea8537e35f45342b","Linux >= 42ea9cf2f16b7131cb7302acb3dac510968f8bdc < 7c54bd225d83bc1bcb44430ed4b4d3a5c36b1961","Linux >= 42ea9cf2f16b7131cb7302acb3dac510968f8bdc < 83463a96ea3c7d8ae636a4d6a0ba63c9ce410724","Linux c6ce687077cc67e4f3cbd0c89cb356fbbce91f4c","Linux >= 6.12.75 < 6.12.103","Linux >= 6.18.16 < 6.18.44","Linux >= 6.19.6 < 6.20","Linux 7.0"],"ssvc":{"exploitation":"none","automatable":"no","technicalImpact":"total","timestamp":"2026-10-16T18:56:43.690802Z"},"published":"2026-08-15","updated":"2026-10-16","sourceUpdated":"2026-10-16T19:05:46.230Z","source":"CVEORG","sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-74447","references":[{"url":"https://git.kernel.org/stable/c/273548eb997c6be85230c1236b18784b09f6203c"},{"url":"https://git.kernel.org/stable/c/6dc0b4b39ed4f11ef70f76ecea8537e35f45342b"},{"url":"https://git.kernel.org/stable/c/7c54bd225d83bc1bcb44430ed4b4d3a5c36b1961"},{"url":"https://git.kernel.org/stable/c/83463a96ea3c7d8ae636a4d6a0ba63c9ce410724"}],"tags":["cve.org"],"epss":0.00129,"epssPercentile":0.02228,"ingestedAt":"2026-10-16T19:46:24.362Z","slug":"CVE-2026-74447","body":"## Overview\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\ndrm/amdkfd: fix uint32_t overflow in EOP ring buffer size alignment\n\neop_ring_buffer_size in struct queue_properties is a u32. In\nkfd_queue_acquire_buffers() the expected EOP buffer size is computed as\nALIGN(eop_ring_buffer_size, PAGE_SIZE); ALIGN uses typeof(x), so the\naddition is done in 32-bit. A user-supplied size of 0xFFFFF001 wraps to\n0, causing kfd_queue_buffer_get() to skip its exact-size check (gated on\nsize != 0) and accept any BO mapped at the address. On GFX8/GFX9 the MQD\ncp_hqd_eop_control is then programmed for an 8KB EOP ring backed by a 4KB\nBO, so CP EOP writes can land past the buffer and fault the GPU.\n\nCast the operand to u64 so the alignment is computed in 64-bit; the size\ncheck in kfd_queue_buffer_get() then rejects the oversized request.\n\n(cherry picked from commit ae443117b742c357bfef3a7bddabf76fcf86e9ef)\n\n## Affected\n\n- `Linux >= ee0dc6c66a913260311876a4b2b53fe0b9bc3f94 < 273548eb997c6be85230c1236b18784b09f6203c`\n- `Linux >= acfc84cfa70aca5b970faf152979bc97b9f8b0c0 < 6dc0b4b39ed4f11ef70f76ecea8537e35f45342b`\n- `Linux >= 42ea9cf2f16b7131cb7302acb3dac510968f8bdc < 7c54bd225d83bc1bcb44430ed4b4d3a5c36b1961`\n- `Linux >= 42ea9cf2f16b7131cb7302acb3dac510968f8bdc < 83463a96ea3c7d8ae636a4d6a0ba63c9ce410724`\n- `Linux c6ce687077cc67e4f3cbd0c89cb356fbbce91f4c`\n- `Linux >= 6.12.75 < 6.12.103`\n- `Linux >= 6.18.16 < 6.18.44`\n- `Linux >= 6.19.6 < 6.20`\n- `Linux 7.0`\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"twilight","depthScore":43,"depthScoreParts":{"impact":42.9,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}