Re: [PATCH v2] PM: Kconfig: fix unmet dependency for PM_SLEEP_SMP

From: Rafael J. Wysocki
Date: Tue Mar 23 2021 - 11:24:36 EST


On Tue, Mar 23, 2021 at 3:16 PM Necip Fazil Yildiran
<fazilyildiran@xxxxxxxxx> wrote:
>
> When PM_SLEEP_SMP is enabled and HOTPLUG_CPU is disabled, it results in
> the following Kbuild warning:
>
> WARNING: unmet direct dependencies detected for HOTPLUG_CPU
> Depends on [n]: SMP [=y] && (PPC_PSERIES [=n] || PPC_PMAC [=n] || PPC_POWERNV [=n] || FSL_SOC_BOOKE [=n])
> Selected by [y]:
> - PM_SLEEP_SMP [=y] && SMP [=y] && (ARCH_SUSPEND_POSSIBLE [=n] || ARCH_HIBERNATION_POSSIBLE [=y]) && PM_SLEEP [=y]
>
> The reason is that PM_SLEEP_SMP selects HOTPLUG_CPU without depending on
> or selecting HOTPLUG_CPU's dependencies.
>
> Let PM_SLEEP_SMP depend on HOTPLUG_CPU's dependencies to avoid Kbuild issues.
>
> Signed-off-by: Necip Fazil Yildiran <fazilyildiran@xxxxxxxxx>
> ---
> v1->v2:
> * Keep selecting HOTPLUG_CPU by PM_SLEEP_SMP as it needs to be selected
> automatically, let PM_SLEEP_SMP depend on missing dependencies instead.
> ---
> kernel/power/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/kernel/power/Kconfig b/kernel/power/Kconfig
> index 6bfe3ead10ad..0c4aa403e04a 100644
> --- a/kernel/power/Kconfig
> +++ b/kernel/power/Kconfig
> @@ -125,6 +125,7 @@ config PM_SLEEP_SMP
> depends on SMP
> depends on ARCH_SUSPEND_POSSIBLE || ARCH_HIBERNATION_POSSIBLE
> depends on PM_SLEEP
> + depends on PPC_PSERIES || PPC_PMAC || PPC_POWERNV || FSL_SOC_BOOKE

This would make it not work on non-PPC, wouldn't it?

> select HOTPLUG_CPU
>
> config PM_SLEEP_SMP_NONZERO_CPU
> --