In non-smp configuration, hartid can be higher that NR_CPUS.
riscv_of_processor_hartid should not be compared to hartid to NR_CPUS in
that case. Moreover, this function checks all the DT properties of a
hart node. NR_CPUS comparison seems out of place.

Signed-off-by: Atish Patra <atish.pa...@wdc.com>
Reviewed-by: Christoph Hellwig <h...@lst.de>
Reviewed-by: Anup Patel <a...@brainfault.org>
---
 arch/riscv/kernel/cpu.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/arch/riscv/kernel/cpu.c b/arch/riscv/kernel/cpu.c
index d1d9bfd5..cf2fca12 100644
--- a/arch/riscv/kernel/cpu.c
+++ b/arch/riscv/kernel/cpu.c
@@ -34,10 +34,6 @@ int riscv_of_processor_hartid(struct device_node *node)
                pr_warn("Found CPU without hart ID\n");
                return -ENODEV;
        }
-       if (hart >= NR_CPUS) {
-               pr_info("Found hart ID %d, which is above NR_CPUs.  Disabling 
this hart\n", hart);
-               return -ENODEV;
-       }
 
        if (!of_device_is_available(node)) {
                pr_info("CPU with hartid=%d is not available\n", hart);
-- 
2.7.4

Reply via email to