lkml.org 
[lkml]   [2019]   [Jan]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
SubjectRe: [PATCH v2 8/8] RISC-V: Assign hwcap only according to current cpu.
From
Date
On 1/8/19 1:38 AM, Atish Patra 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;
>

Argh..Missed an include while rebasing. Following edit is required for
non SMP config. I will fix it in v2.

diff --git a/arch/riscv/kernel/cpufeature.c b/arch/riscv/kernel/cpufeature.c
index ed6122ff..78379ea3 100644
--- a/arch/riscv/kernel/cpufeature.c
+++ b/arch/riscv/kernel/cpufeature.c
@@ -20,6 +20,7 @@
#include <linux/of.h>
#include <asm/processor.h>
#include <asm/hwcap.h>
+#include <asm/smp.h>

Regards,
Atish

\
 
 \ /
  Last update: 2019-01-08 11:33    [W:0.095 / U:11.404 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site