Re: [PATCH v2 8/8] RISC-V: Assign hwcap only according to current cpu.

Anup Patel
2019-01-08T12:01:53Z

On Tue, Jan 8, 2019 at 3:08 PM Atish Patra <atish.patra@wdc.com> wrote:
>
> Currently, we set hwcap based on first valid cpu from
> DT. This may not be correct always as that CPU might not
> be current booting cpu.
>
> Set hwcap based on the current cpu instead of first
> valid CPU from DT.
>
> Signed-off-by: Atish Patra <atish.patra@wdc.com>
> ---
> arch/riscv/kernel/cpufeature.c | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/arch/riscv/kernel/cpufeature.c b/arch/riscv/kernel/cpufeature.c
> index a6e369ed..ed6122ff 100644
> --- a/arch/riscv/kernel/cpufeature.c
> +++ b/arch/riscv/kernel/cpufeature.c
> @@ -43,12 +43,15 @@ void riscv_fill_hwcap(void)
> elf_hwcap = 0;
>
> /*
> - * We don't support running Linux on hertergenous ISA systems. For
> - * now, we just check the ISA of the first "okay" processor.
> + * We don't support running Linux on hertergenous ISA systems.
> + * But first "okay" processor might not be the boot cpu.
> + * Check the ISA of boot cpu.
> */
> - while ((node = of_find_node_by_type(node, "cpu")))
> - if (riscv_of_processor_hartid(node) >= 0)
> + while ((node = of_find_node_by_type(node, "cpu"))) {
> + if (riscv_of_processor_hartid(node) == boot_cpu_hartid)
> break;
> + }
> +
> if (!node) {
> pr_warning("Unable to find \"cpu\" devicetree entry");
> return;
> --
> 2.7.4
>

Looks good to me.

Reviewed-by: Anup Patel <anup@brainfault.org>

Regards,
Anup