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

drm/amdgpu: fix bo->pin leaking in amdgpu_bo_create_reserved

amdgpu_bo_create_reserved() only allocates a new BO when
*bo_ptr (struct amdgpu_bo **bo_ptr as input parameter) is
NULL, it simply skips creation when *bo_ptr is non-NULL.
But it unconditionally reserves, pins, gart allocates
and maps the BO afterwards.

When the same non-NULL BO pointer is passed in again,
for example firmware buffers that live in adev and are
re-loaded on every resume / cp_resume / start
under AMDGPU_FW_LOAD_DIRECT, amdgpu_bo_pin() just increases
pin_count unconditionally, however the matching teardown only unpins
once, so pin_count never drops to zero, so TTM is not able
to move, swap or evict a BO, causing BO leaks.

This commit fixes this issue by only pinning the bo
once at creation, and repeated calls no longer
take additional pin references.

(cherry picked from commit 3ddc0ae76202c447b6aec61e907b852bc94671cf)
Published: 2026-08-10
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The kernel’s AMDGPU buffer object creation routine increments a pin counter each time it is called with a non‑NULL pointer, yet the corresponding unpin operation only decrements it once. This mismatch allows the pin count to grow indefinitely, preventing the TTM memory manager from moving, swapping or evicting the affected buffer objects. The result is a leaking of kernel‑side buffers that can eventually consume all available memory and degrade system performance or cause failures.

Affected Systems

All Linux kernel installations that use the AMDGPU driver are potentially affected. No specific kernel versions are listed, so the issue may exist in any release that has not applied the commit that corrects the reference counting logic.

Risk and Exploitability

The vulnerability is not catalogued in CISA’s KEV list and the EPSS score of <1% indicates a low yet non‑zero exploitation probability. The CVSS score of 5.5 reflects a moderate severity. Exploitation requires privileged code to perform repeated calls to the driver routine that occurs during firmware reloads or resume operations; it is therefore unlikely to be exploitable remotely without kernel compromise. The risk is judged moderate, primarily to the integrity and availability of memory resources within the affected systems.

Generated by OpenCVE AI on August 13, 2026 at 07:38 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the kernel to a revision that includes the commit fixing the pin count mis‑management in amdgpu_bo_create_reserved
  • Apply the latest AMDGPU driver updates that incorporate the upstream patch
  • Monitor kernel memory usage and BO pin counts after the update to verify that the leak has been mitigated

Generated by OpenCVE AI on August 13, 2026 at 07:38 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4745-1 linux-6.12 security update
History

Wed, 19 Aug 2026 16:45:00 +0000


Thu, 13 Aug 2026 06:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-399
CWE-835

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

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

None

cvssV3_1

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

threat_severity

Low


Mon, 10 Aug 2026 15:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-399
CWE-835

Mon, 10 Aug 2026 12:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: fix bo->pin leaking in amdgpu_bo_create_reserved amdgpu_bo_create_reserved() only allocates a new BO when *bo_ptr (struct amdgpu_bo **bo_ptr as input parameter) is NULL, it simply skips creation when *bo_ptr is non-NULL. But it unconditionally reserves, pins, gart allocates and maps the BO afterwards. When the same non-NULL BO pointer is passed in again, for example firmware buffers that live in adev and are re-loaded on every resume / cp_resume / start under AMDGPU_FW_LOAD_DIRECT, amdgpu_bo_pin() just increases pin_count unconditionally, however the matching teardown only unpins once, so pin_count never drops to zero, so TTM is not able to move, swap or evict a BO, causing BO leaks. This commit fixes this issue by only pinning the bo once at creation, and repeated calls no longer take additional pin references. (cherry picked from commit 3ddc0ae76202c447b6aec61e907b852bc94671cf)
Title drm/amdgpu: fix bo->pin leaking in amdgpu_bo_create_reserved
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-19T16:32:06.457Z

Reserved: 2026-07-30T09:28:09.376Z

Link: CVE-2026-68234

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-10T13:20:11.707

Modified: 2026-08-19T17:20:38.927

Link: CVE-2026-68234

cve-icon Redhat

Severity : Low

Publid Date: 2026-08-10T00:00:00Z

Links: CVE-2026-68234 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-13T07:45:17Z

Weaknesses
  • CWE-772

    Missing Release of Resource after Effective Lifetime