Re: [PATCH] cpuidle: Move cpuidle driver forward before acpi driver in Makefile

From: Rafael J. Wysocki
Date: Wed Jul 13 2022 - 13:53:29 EST


On Wed, Jul 13, 2022 at 10:21 AM Dapeng Mi <dapeng1.mi@xxxxxxxxx> wrote:
>
> As long as Kconfig ACPI_PROCESSOR is enabled, ACPI_PROCESSOR would
> select ACPI_PROCESSOR_IDLE and acpi_idle driver is enabled. But
> in current driver loading order acpi_idle driver is always loaded
> before cpuidle_haltpoll driver. This leads to cpuidle_hatpoll driver
> has no chance to be loaded when it's enabled.
>
> Thus, move cpuidle driver forward before acpi driver and make
> cpuidle-hatpoll driver has a chance to be run when it's enabled.
>
> Signed-off-by: Dapeng Mi <dapeng1.mi@xxxxxxxxx>
> ---
> drivers/Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/Makefile b/drivers/Makefile
> index 9a30842b22c5..921ed481b520 100644
> --- a/drivers/Makefile
> +++ b/drivers/Makefile
> @@ -26,6 +26,7 @@ obj-y += idle/
> # IPMI must come before ACPI in order to provide IPMI opregion support
> obj-y += char/ipmi/
>
> +obj-$(CONFIG_CPU_IDLE) += cpuidle/
> obj-$(CONFIG_ACPI) += acpi/
>
> # PnP must come after ACPI since it will eventually need to check if acpi
> @@ -126,7 +127,6 @@ obj-$(CONFIG_EDAC) += edac/
> obj-$(CONFIG_EISA) += eisa/
> obj-$(CONFIG_PM_OPP) += opp/
> obj-$(CONFIG_CPU_FREQ) += cpufreq/
> -obj-$(CONFIG_CPU_IDLE) += cpuidle/
> obj-y += mmc/
> obj-y += ufs/
> obj-$(CONFIG_MEMSTICK) += memstick/
> --

Well, this change doesn't guarantee loading haltpoll before ACPI idle.

Also what if haltpoll is enabled, but the user wants ACPI idle?