---
id: CVE-2026-53143
title: 'drm/amdkfd: Fix buffer overflow in SDMA queue checkpoint/restore on GFX11'
summary: |-
  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_mq…
severity: high
cvss: 7
cvssVector: 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H'
cvssSource: adp
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= cc009e613de6560eb499f8bc92c80a737752cb30 <
    16dad1fb0d783a4008de30e32d0038c393de05b1
  - >-
    Linux >= cc009e613de6560eb499f8bc92c80a737752cb30 <
    2c5b66c9b4057b385566940935ebc32f6e6ebfd2
  - >-
    Linux >= cc009e613de6560eb499f8bc92c80a737752cb30 <
    d3efcadfe3eea5b4263b8f2d4463b15c9fc46a64
  - >-
    Linux >= cc009e613de6560eb499f8bc92c80a737752cb30 <
    d02f05d30f35b036f7cbaf72de634affb5b38ec6
  - >-
    Linux >= cc009e613de6560eb499f8bc92c80a737752cb30 <
    352ea59028ea48a6fff77f19ae28f98f71946a80
  - Linux 5.19
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-11-06T16:20:46.066510Z'
published: '2026-06-25'
updated: '2026-11-06'
sourceUpdated: '2026-11-06T16:24:04.529Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-53143'
references:
  - url: 'https://git.kernel.org/stable/c/16dad1fb0d783a4008de30e32d0038c393de05b1'
  - url: 'https://git.kernel.org/stable/c/2c5b66c9b4057b385566940935ebc32f6e6ebfd2'
  - url: 'https://git.kernel.org/stable/c/d3efcadfe3eea5b4263b8f2d4463b15c9fc46a64'
  - url: 'https://git.kernel.org/stable/c/d02f05d30f35b036f7cbaf72de634affb5b38ec6'
  - url: 'https://git.kernel.org/stable/c/352ea59028ea48a6fff77f19ae28f98f71946a80'
tags:
  - cve.org
epss: 0.00153
epssPercentile: 0.0446
ingestedAt: '2026-11-06T16:57:43.279Z'
---

## Overview

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)

## Affected

- `Linux >= cc009e613de6560eb499f8bc92c80a737752cb30 < 16dad1fb0d783a4008de30e32d0038c393de05b1`
- `Linux >= cc009e613de6560eb499f8bc92c80a737752cb30 < 2c5b66c9b4057b385566940935ebc32f6e6ebfd2`
- `Linux >= cc009e613de6560eb499f8bc92c80a737752cb30 < d3efcadfe3eea5b4263b8f2d4463b15c9fc46a64`
- `Linux >= cc009e613de6560eb499f8bc92c80a737752cb30 < d02f05d30f35b036f7cbaf72de634affb5b38ec6`
- `Linux >= cc009e613de6560eb499f8bc92c80a737752cb30 < 352ea59028ea48a6fff77f19ae28f98f71946a80`
- `Linux 5.19`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
