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

drm/amdkfd: Fix buffer overflow in SDMA queue checkpoint/restore on GFX11

The v11 MQD manager incorrectly assigned the CP-compute variants of
checkpoint_mqd/restore_mqd for KFD_MQD_TYPE_SDMA queues. These functions
use sizeof(struct v11_compute_mqd) (2048 bytes) instead of sizeof(struct
v11_sdma_mqd) (512 bytes), causing a 1536-byte overflow.

During CRIU checkpoint of an SDMA queue on Navi3x:
- checkpoint_mqd() reads 2048 bytes from a 512-byte SDMA MQD buffer,
leaking 1536 bytes of adjacent GTT memory to userspace

During CRIU restore:
- restore_mqd() writes 2048 bytes into a 512-byte SDMA MQD buffer,
corrupting 1536 bytes of adjacent GTT memory (often the ring buffer
or neighboring MQDs)

This is a copy-paste regression unique to v11. All other ASIC backends
(cik, vi, v9, v10, v12) correctly use the SDMA-specific variants.

Add checkpoint_mqd_sdma() and restore_mqd_sdma() functions that properly
handle the smaller v11_sdma_mqd structure, matching the pattern used in
other MQD managers.

(cherry picked from commit 6fa41db7ffdec97d62433adf03b7b9b759af8c2c)
Published: 2026-06-25
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

In the Linux kernel, the amdkfd driver for GFX11 (Navi3x) contains a buffer overflow in the SDMA queue checkpoint/restore logic. The bug arose because the functions checkpoint_mqd and restore_mqd used the 2048-byte compute_mqd size instead of the correct 512-byte sdma_mqd size, causing a 1536-byte overflow. During a CRIU checkpoint, the driver reads 2048 bytes from a 512-byte buffer, leaking 1536 bytes of adjacent GTT memory; during restoration, it writes 2048 bytes, corrupting 1536 bytes of surrounding memory such as the ring buffer or neighboring MQDs. Based on the description, it is inferred that an attacker can read leaked kernel memory from userspace and overwrite critical GTT data when restoring, enabling confidentiality loss, integrity compromise, and potential denial of service.

Affected Systems

Affected are Linux kernels that include the amdkfd driver for GFX11 (Navi3x) hardware. This includes kernel versions 7.1 rc1 through rc6 and earlier releases that had not yet incorporated the patch; any distribution using those kernels is at risk.

Risk and Exploitability

The likely attack vector is a local process that performs CRIU checkpoint or restore of an SDMA queue. Based on the description, it is inferred that the attacker must have local access to the affected kernel and may trigger the flaw via user-space software that interacts with KFD. The CVSS score of 7.8 indicates a high-severity vulnerability, while the EPSS score of < 1 % implies a low exploitation probability. The vulnerability is not listed in the CISA KEV catalog, yet its kernel privilege escalation potential makes it a critical issue for systems that expose amdkfd or run CRIU on GFX11 GPUs.

Generated by OpenCVE AI on August 13, 2026 at 14:25 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the latest Linux kernel update that patches the amdkfd driver to use the correct sdma_mqd structure for checkpoint/restore on GFX11.
  • If an update cannot be applied immediately, disable CRIU checkpoint/restore functionality for SDMA queues or consider disabling KFD services on hosts that do not require GPU acceleration.
  • As a temporary measure, avoid running CRIU on systems with GFX11 GPUs until the kernel patch is in place.

Generated by OpenCVE AI on August 13, 2026 at 14:25 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 20 Aug 2026 13:30:00 +0000


Wed, 12 Aug 2026 08:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-122

Fri, 26 Jun 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-131
References
Metrics threat_severity

None

cvssV3_1

{'score': 7.0, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H'}

threat_severity

Important


Thu, 25 Jun 2026 10:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-122
CWE-787

Thu, 25 Jun 2026 09:15:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: drm/amdkfd: Fix buffer overflow in SDMA queue checkpoint/restore on GFX11 The v11 MQD manager incorrectly assigned the CP-compute variants of checkpoint_mqd/restore_mqd for KFD_MQD_TYPE_SDMA queues. These functions use sizeof(struct v11_compute_mqd) (2048 bytes) instead of sizeof(struct v11_sdma_mqd) (512 bytes), causing a 1536-byte overflow. During CRIU checkpoint of an SDMA queue on Navi3x: - checkpoint_mqd() reads 2048 bytes from a 512-byte SDMA MQD buffer, leaking 1536 bytes of adjacent GTT memory to userspace During CRIU restore: - restore_mqd() writes 2048 bytes into a 512-byte SDMA MQD buffer, corrupting 1536 bytes of adjacent GTT memory (often the ring buffer or neighboring MQDs) This is a copy-paste regression unique to v11. All other ASIC backends (cik, vi, v9, v10, v12) correctly use the SDMA-specific variants. Add checkpoint_mqd_sdma() and restore_mqd_sdma() functions that properly handle the smaller v11_sdma_mqd structure, matching the pattern used in other MQD managers. (cherry picked from commit 6fa41db7ffdec97d62433adf03b7b9b759af8c2c)
Title drm/amdkfd: Fix buffer overflow in SDMA queue checkpoint/restore on GFX11
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-20T12:32:03.965Z

Reserved: 2026-06-09T07:44:35.387Z

Link: CVE-2026-53143

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Modified

Published: 2026-06-25T09:16:31.607

Modified: 2026-08-20T13:19:00.560

Link: CVE-2026-53143

cve-icon Redhat

Severity : Important

Publid Date: 2026-06-25T00:00:00Z

Links: CVE-2026-53143 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-13T14:30:18Z

Weaknesses
  • CWE-131

    Incorrect Calculation of Buffer Size

  • CWE-787

    Out-of-bounds Write