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 f8fa2c63..19edaeae 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_property_read_string(node, "status", &status)) {
                pr_warn("CPU with hartid=%d has no \"status\" property\n", 
hart);
-- 
2.7.4

Reply via email to