{"id":"CVE-2026-98779","summary":"drm/amdgpu: fix ACP MFD device leak on init failure","details":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/amdgpu: fix ACP MFD device leak on init failure\n\nacp_hw_init() registers ACP child devices with mfd_add_devices() before\nattaching them to the ACP power domain and initializing the hardware.\n\nIf attaching a child to the power domain fails, or if the ACP reset or\nclock enable operation times out, the failure path frees only the\nsource cell, resource, and platform-data allocations. The child\nplatform devices already registered by mfd_add_devices() remain\nregistered and are never released.\n\nRemove the children from the power domain and unregister the MFD\ndevices on failures that occur after mfd_add_devices() succeeds. Keep\nmfd_add_devices() failures on the existing cleanup path since the MFD\ncore already rolls back partially registered children itself.\n\nThe issue was identified by a static analysis tool I developed and\nconfirmed by manual review.\n\n(cherry picked from commit 63da68d6a2279ec945581c990c5a59a5ae8b5560)","modified":"2026-10-19T02:47:20.201068508Z","published":"2026-10-18T15:48:16.729Z","database_specific":{"cna_assigner":"Linux","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/98xxx/CVE-2026-98779.json"},"references":[{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"},{"type":"WEB","url":"https://git.kernel.org/stable/c/2b9a53940a2bc063ea4cd09ee49220a503a0170c"},{"type":"WEB","url":"https://git.kernel.org/stable/c/587469076e4ffb617f7ad1a0c4a13072a3e87113"},{"type":"WEB","url":"https://git.kernel.org/stable/c/abf854513bc19e6e24d45353ac99ec5627ee0acc"},{"type":"WEB","url":"https://git.kernel.org/stable/c/f0013046151b7467e62c471c1c83d63ea255799c"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/98xxx/CVE-2026-98779.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-98779"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"25030321ba2860c56651429a4f28d94a6483d952"},{"fixed":"2b9a53940a2bc063ea4cd09ee49220a503a0170c"},{"fixed":"587469076e4ffb617f7ad1a0c4a13072a3e87113"},{"fixed":"abf854513bc19e6e24d45353ac99ec5627ee0acc"},{"fixed":"f0013046151b7467e62c471c1c83d63ea255799c"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-98779.json"}},{"package":{"name":"Kernel","ecosystem":"Linux"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.6.0"},{"fixed":"6.12.113"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.13.0"},{"fixed":"6.18.56"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.19.0"},{"fixed":"7.2.10"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-98779.json"}}],"schema_version":"1.9.0"}