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

drm/amdgpu: free the userptr ranges when a CS fails after parser_bos

amdgpu_cs_parser_bos() allocates an HMM range for every userptr entry of
the BO list and looks up the user pages. Those ranges are only freed when
amdgpu_cs_parser_bos() itself fails or when amdgpu_cs_submit() checks
them under the notifier lock. If amdgpu_cs_patch_jobs(),
amdgpu_cs_vm_handling(), amdgpu_cs_sync_rings() or the early part of
amdgpu_cs_submit() fails, nothing frees them: neither
amdgpu_cs_parser_fini() nor amdgpu_bo_list_free() touch e->range.

Each such CS then leaks the range, its hmm_pfns array (8 bytes per page
of the userptr BO) and the BO reference the range holds. An IB on a ring
that patches the CS in place (e.g. VCN) with an unmapped va_start fails
in amdgpu_cs_patch_ibs() and takes this path.

Free the ranges on those error paths. Ranges amdgpu_cs_submit() already
dropped are NULL, so freeing them again is a no-op.

(cherry picked from commit c52a9542ed7cfd527feb938bd0accada2ac8d267)
Published: 2026-10-28
Score: n/a
EPSS: n/a
KEV: No
Impact: Kernel memory/resource leak leading to potential denial of service
Action: Apply Patch
AI Analysis

Impact

The amdgpu command submission parser allocates a host memory mapping (HMM) range for each user pointer (userptr) entry in a buffer object list but fails to free those ranges on certain error paths in amdgpu_cs_patch_jobs, amdgpu_cs_vm_handling, amdgpu_cs_sync_rings, or the early part of amdgpu_cs_submit. Consequently each failed command submission leaks the HMM range, the per‑page address array, and associated buffer object references, causing a kernel‑space memory/resource leak. Repeated exploitation can deplete kernel memory, potentially leading to system instability or denial of service.

Affected Systems

Affected systems are Linux kernel releases that include the amdgpu driver before the patch containing commit c52a9542. This includes most distributions running older kernels with an unpatched amdgpu driver. The vulnerability is not tied to a specific vendor beyond the Linux kernel itself, and any system using the affected driver version is susceptible.

Risk and Exploitability

The CVE is not listed in the CISA KEV catalog and the EPSS score is not available, indicating no publicly known exploitation at this time. The vulnerability requires a local user to submit many failing command buffers that trigger the specific error paths, so the risk is considered low to moderate under standard operating conditions. However, because the leak accumulates kernel memory, a kernel administrator could deliberately induce the failure repeatedly to exhaust memory and cause a denial of service.

Generated by OpenCVE AI on October 28, 2026 at 12:46 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the kernel to a release that includes the amdgpu patch (commit c52a9542 or later).
  • If a timely kernel upgrade is not possible, consider disabling GPU features that use userptr buffer objects or temporarily unloading the amdgpu driver until the patch can be applied, while monitoring system memory for abnormal growth.
  • Notify system administrators of the denial‑of‑service risk and schedule kernel upgrade or apply appropriate monitoring.

Generated by OpenCVE AI on October 28, 2026 at 12:46 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 28 Oct 2026 13:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-401

Wed, 28 Oct 2026 12:00:00 +0000

Type Values Removed Values Added
First Time appeared Linux linux
Vendors & Products Linux linux

Wed, 28 Oct 2026 10:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: free the userptr ranges when a CS fails after parser_bos amdgpu_cs_parser_bos() allocates an HMM range for every userptr entry of the BO list and looks up the user pages. Those ranges are only freed when amdgpu_cs_parser_bos() itself fails or when amdgpu_cs_submit() checks them under the notifier lock. If amdgpu_cs_patch_jobs(), amdgpu_cs_vm_handling(), amdgpu_cs_sync_rings() or the early part of amdgpu_cs_submit() fails, nothing frees them: neither amdgpu_cs_parser_fini() nor amdgpu_bo_list_free() touch e->range. Each such CS then leaks the range, its hmm_pfns array (8 bytes per page of the userptr BO) and the BO reference the range holds. An IB on a ring that patches the CS in place (e.g. VCN) with an unmapped va_start fails in amdgpu_cs_patch_ibs() and takes this path. Free the ranges on those error paths. Ranges amdgpu_cs_submit() already dropped are NULL, so freeing them again is a no-op. (cherry picked from commit c52a9542ed7cfd527feb938bd0accada2ac8d267)
Title drm/amdgpu: free the userptr ranges when a CS fails after parser_bos
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 Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-28T10:34:25.279Z

Reserved: 2026-09-25T10:25:14.391Z

Link: CVE-2026-99106

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-28T11:17:29.960

Modified: 2026-10-28T11:17:29.960

Link: CVE-2026-99106

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-28T13:00:15Z

Weaknesses
  • CWE-401

    Missing Release of Memory after Effective Lifetime