Re: [PATCH -next] cpuidle: riscv: support non-SMP config

From: Anup Patel
Date: Sun Apr 03 2022 - 23:39:43 EST


On Mon, Apr 4, 2022 at 9:07 AM Randy Dunlap <rdunlap@xxxxxxxxxxxxx> wrote:
>
>
>
> On 4/3/22 20:05, Anup Patel wrote:
> > (Removed my WDC email because it does not exist anymore)
> >
> > On Sun, Apr 3, 2022 at 8:44 AM Randy Dunlap <rdunlap@xxxxxxxxxxxxx> wrote:
> >>
> >> Add <asm/smp.h> for cpuid_to_hartid_map etc.
> >> This is needed for both SMP and non-SMP builds, but not having it
> >> causes a build error for non-SMP:
> >>
> >> drivers/cpuidle/cpuidle-riscv-sbi.c: In function 'sbi_cpuidle_init_cpu':
> >> drivers/cpuidle/cpuidle-riscv-sbi.c:350:26: error: implicit declaration of function 'cpuid_to_hartid_map' [-Werror=implicit-function-declaration]
> >>
> >> Fixes: 6abf32f1d9c5 ("cpuidle: Add RISC-V SBI CPU idle driver")
> >> Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
> >> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> >> Cc: Anup Patel <anup.patel@xxxxxxx>
> >> Cc: Anup Patel <anup@xxxxxxxxxxxxxx>
> >> Cc: Anup Patel <apatel@xxxxxxxxxxxxxxxx>
> >> Cc: Atish Patra <atishp@xxxxxxxxxxxx>
> >> Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
> >> Cc: "Rafael J. Wysocki" <rafael@xxxxxxxxxx>
> >> Cc: linux-pm@xxxxxxxxxxxxxxx
> >> Cc: linux-riscv@xxxxxxxxxxxxxxxxxxx
> >> Cc: Palmer Dabbelt <palmer@xxxxxxxxxxxx>
> >> Cc: Paul Walmsley <paul.walmsley@xxxxxxxxxx>
> >> Cc: Albert Ou <aou@xxxxxxxxxxxxxxxxx>
> >> ---
> >> drivers/cpuidle/cpuidle-riscv-sbi.c | 1 +
> >> 1 file changed, 1 insertion(+)
> >>
> >> --- linux-next-20220401.orig/drivers/cpuidle/cpuidle-riscv-sbi.c
> >> +++ linux-next-20220401/drivers/cpuidle/cpuidle-riscv-sbi.c
> >> @@ -22,6 +22,7 @@
> >> #include <linux/pm_runtime.h>
> >> #include <asm/cpuidle.h>
> >> #include <asm/sbi.h>
> >> +#include <asm/smp.h>
> >
> > I suggest include linux/smp.h here instead of asm/smp.h
> >
> > Otherwise it looks good to me.
> >
> > Reviewed-by: Anup Patel <anup@xxxxxxxxxxxxxx>
> >
>
> Yeah, checkpatch also suggested that but it does not work.
> Yes, I tested it.
>
> linux/smp.h only #includes <asm/smp.h> if CONFIG_SMP is enabled,
> and this patch needs <asm/smp.h> for the non-SMP case.

Okay, sounds good to me.

No changes needed in this patch.

Regards,
Anup

>
> >
> >> #include <asm/suspend.h>
> >>
> >> #include "dt_idle_states.h"
>
> thanks.
> --
> ~Randy