Messages in this thread | | | Subject | Re: [PATCH] cpuidle: tegra: add ARCH_SUSPEND_POSSIBLE dependency | From | Dmitry Osipenko <> | Date | Thu, 14 Oct 2021 01:25:09 +0300 |
| |
14.10.2021 00:55, Arnd Bergmann пишет: > On Wed, Oct 13, 2021 at 10:49 PM Dmitry Osipenko <digetx@gmail.com> wrote: >>> diff --git a/drivers/cpuidle/Kconfig.arm b/drivers/cpuidle/Kconfig.arm >>> index 2cc3c208a180..af97992eaa82 100644 >>> --- a/drivers/cpuidle/Kconfig.arm >>> +++ b/drivers/cpuidle/Kconfig.arm >>> @@ -100,6 +100,7 @@ config ARM_MVEBU_V7_CPUIDLE >>> config ARM_TEGRA_CPUIDLE >>> bool "CPU Idle Driver for NVIDIA Tegra SoCs" >>> depends on (ARCH_TEGRA || COMPILE_TEST) && !ARM64 && MMU >>> + depends on ARCH_SUSPEND_POSSIBLE >>> select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP >>> select ARM_CPU_SUSPEND >>> help >>> >> >> Arnd, thank you for the patch! >> >> Apparently ARM_QCOM_SPM_CPUIDLE doesn't have that problem visible >> because it selects QCOM_SPM, which depends on ARCH_QCOM, and thus >> ARCH_QCOM should be auto-selected(?). > > No, that's not how it works. In fact ARM_QCOM_SPM_CPUIDLE has the > exact same problem. I tried to check if there are other drivers affected > by this problem before I sent my patch, but I did something wrong and > missed this one. > >> I'm curious whether this needs to >> be corrected, otherwise (ARCH_QCOM || COMPILE_TEST) doesn't make much >> sense for that driver. And then it will need the same Kconfig fix as well. >> >> I assume this problem wasn't caught by regular kernel build bots because >> they don't test randconfig, don't they? > > They do test randconfig builds, but only a few of them. This one is > rather hard to hit, it probably took me 100 builds before I hit the first > one and I haven't run into the QCOM one yet, though I did see a > different issue for ARM_QCOM_SPM_CPUIDLE: > > WARNING: unmet direct dependencies detected for QCOM_SPM > Depends on [n]: ARCH_QCOM [=n] > Selected by [y]: > - ARM_QCOM_SPM_CPUIDLE [=y] && CPU_IDLE [=y] && (ARM [=y] || ARM64) > && (ARCH_QCOM [=n] || COMPILE_TEST [=y]) && !ARM64 && MMU [=y]
This is exactly what I expected, thank you for fixing all this!
| |