---
id: CVE-2026-98779
title: 'drm/amdgpu: fix ACP MFD device leak on init failure'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  drm/amdgpu: fix ACP MFD device leak on init failure

  acp_hw_init() registers ACP child devices with mfd_add_devices() before
  attaching them to the ACP power domain and …
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 25030321ba2860c56651429a4f28d94a6483d952 <
    2b9a53940a2bc063ea4cd09ee49220a503a0170c
  - >-
    Linux >= 25030321ba2860c56651429a4f28d94a6483d952 <
    587469076e4ffb617f7ad1a0c4a13072a3e87113
  - >-
    Linux >= 25030321ba2860c56651429a4f28d94a6483d952 <
    abf854513bc19e6e24d45353ac99ec5627ee0acc
  - >-
    Linux >= 25030321ba2860c56651429a4f28d94a6483d952 <
    f0013046151b7467e62c471c1c83d63ea255799c
  - Linux 4.6
published: '2026-10-18'
updated: '2026-10-18'
sourceUpdated: '2026-10-18T15:48:16.729Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-98779'
references:
  - url: 'https://git.kernel.org/stable/c/2b9a53940a2bc063ea4cd09ee49220a503a0170c'
  - url: 'https://git.kernel.org/stable/c/587469076e4ffb617f7ad1a0c4a13072a3e87113'
  - url: 'https://git.kernel.org/stable/c/abf854513bc19e6e24d45353ac99ec5627ee0acc'
  - url: 'https://git.kernel.org/stable/c/f0013046151b7467e62c471c1c83d63ea255799c'
tags:
  - cve.org
ingestedAt: '2026-10-18T16:47:32.490Z'
---

## Overview

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

drm/amdgpu: fix ACP MFD device leak on init failure

acp_hw_init() registers ACP child devices with mfd_add_devices() before
attaching them to the ACP power domain and initializing the hardware.

If attaching a child to the power domain fails, or if the ACP reset or
clock enable operation times out, the failure path frees only the
source cell, resource, and platform-data allocations. The child
platform devices already registered by mfd_add_devices() remain
registered and are never released.

Remove the children from the power domain and unregister the MFD
devices on failures that occur after mfd_add_devices() succeeds. Keep
mfd_add_devices() failures on the existing cleanup path since the MFD
core already rolls back partially registered children itself.

The issue was identified by a static analysis tool I developed and
confirmed by manual review.

(cherry picked from commit 63da68d6a2279ec945581c990c5a59a5ae8b5560)

## Affected

- `Linux >= 25030321ba2860c56651429a4f28d94a6483d952 < 2b9a53940a2bc063ea4cd09ee49220a503a0170c`
- `Linux >= 25030321ba2860c56651429a4f28d94a6483d952 < 587469076e4ffb617f7ad1a0c4a13072a3e87113`
- `Linux >= 25030321ba2860c56651429a4f28d94a6483d952 < abf854513bc19e6e24d45353ac99ec5627ee0acc`
- `Linux >= 25030321ba2860c56651429a4f28d94a6483d952 < f0013046151b7467e62c471c1c83d63ea255799c`
- `Linux 4.6`

## Remediation

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