Re: [PATCH] ACPI: processor: Unregister cpufreq notifier on init failure
From: Rafael J. Wysocki (Intel)
Date: Fri Jul 31 2026 - 09:01:57 EST
On Wed, Jul 29, 2026 at 4:36 AM Can Peng <pengcan@xxxxxxxxxx> wrote:
>
> acpi_processor_driver_init() registers the cpufreq policy notifier before
> registering the ACPI processor driver and setting up CPU hotplug state.
>
> If driver_register() or cpuhp_setup_state() fails, the error path only
> unregisters the ACPI processor driver and the idle driver. The cpufreq
> notifier remains registered even though initialization failed.
>
> Mirror the module exit path on the init failure path and unregister the
> cpufreq notifier when it has been registered.
>
> Fixes: c0e0421a60bf ("ACPI: processor: Reorder acpi_processor_driver_init()")
> Signed-off-by: Can Peng <pengcan@xxxxxxxxxx>
> ---
> drivers/acpi/processor_driver.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/drivers/acpi/processor_driver.c b/drivers/acpi/processor_driver.c
> index cda8fd720000..cdc2ae1632b2 100644
> --- a/drivers/acpi/processor_driver.c
> +++ b/drivers/acpi/processor_driver.c
> @@ -285,6 +285,12 @@ static int __init acpi_processor_driver_init(void)
> unregister_idle_drv:
> acpi_processor_unregister_idle_driver();
>
> + if (acpi_processor_cpufreq_init) {
> + cpufreq_unregister_notifier(&acpi_processor_notifier_block,
> + CPUFREQ_POLICY_NOTIFIER);
> + acpi_processor_cpufreq_init = false;
> + }
> +
> return result;
> }
>
> --
Applied as 7.3 material, thanks!