Description
In the Linux kernel, the following vulnerability has been resolved: pmdomain: arm: scmi: Fix genpd leak on provider registration failure If of_genpd_add_provider_onecell() fails during probe, the previously created generic power domains are not removed, leading to a memory leak and potential kernel crash later in genpd_debug_add(). Add proper error handling to unwind the initialized domains before returning from probe to ensure all resources are correctly released on failure. Example crash trace observed without this fix: | Unable to handle kernel paging request at virtual address fffffffffffffc70 | CPU: 1 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.18.0-rc1 #405 PREEMPT | Hardware name: ARM LTD ARM Juno Development Platform/ARM Juno Development Platform | pstate: 00000005 (nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) | pc : genpd_debug_add+0x2c/0x160 | lr : genpd_debug_init+0x74/0x98 | Call trace: | genpd_debug_add+0x2c/0x160 (P) | genpd_debug_init+0x74/0x98 | do_one_initcall+0xd0/0x2d8 | do_initcall_level+0xa0/0x140 | do_initcalls+0x60/0xa8 | do_basic_setup+0x28/0x40 | kernel_init_freeable+0xe8/0x170 | kernel_init+0x2c/0x140 | ret_from_fork+0x10/0x20
Product status
898216c97ed2ebfffda659ce12388da43534de6c (git) before 18249a167ffd91b4b4fbd92afd4ddcbf3af81f35
898216c97ed2ebfffda659ce12388da43534de6c (git) before c6e11d320fd6cbaef6d589f2fcb45aa25a6b960a
898216c97ed2ebfffda659ce12388da43534de6c (git) before 582f48d22eb5676fe7be3589b986ddd29f7bf4d1
898216c97ed2ebfffda659ce12388da43534de6c (git) before 7f569197f7ad09319af960bd7e43109de5c67c04
898216c97ed2ebfffda659ce12388da43534de6c (git) before ad120c08b89a81d41d091490bbe150343473b659
898216c97ed2ebfffda659ce12388da43534de6c (git) before 921b090841ae7a08b19ab14495bdf8636dc31e21
898216c97ed2ebfffda659ce12388da43534de6c (git) before 983e91da82ec3e331600108f9be3ea61236f5c75
898216c97ed2ebfffda659ce12388da43534de6c (git) before 7458f72cc28f9eb0de811effcb5376d0ec19094a
4.17
Any version before 4.17
5.4.302 (semver)
5.10.247 (semver)
5.15.197 (semver)
6.1.159 (semver)
6.6.118 (semver)
6.12.59 (semver)
6.17.9 (semver)
6.18 (original_commit_for_fix)
References
git.kernel.org/...c/18249a167ffd91b4b4fbd92afd4ddcbf3af81f35
git.kernel.org/...c/c6e11d320fd6cbaef6d589f2fcb45aa25a6b960a
git.kernel.org/...c/582f48d22eb5676fe7be3589b986ddd29f7bf4d1
git.kernel.org/...c/7f569197f7ad09319af960bd7e43109de5c67c04
git.kernel.org/...c/ad120c08b89a81d41d091490bbe150343473b659
git.kernel.org/...c/921b090841ae7a08b19ab14495bdf8636dc31e21
git.kernel.org/...c/983e91da82ec3e331600108f9be3ea61236f5c75
git.kernel.org/...c/7458f72cc28f9eb0de811effcb5376d0ec19094a
Data based on CVE®. Copyright © 1999-2025, The MITRE Corporation. All rights reserved.