[PATCH v2] riscv: print hartid on bringup

Alexandre Ghiti alex at ghiti.fr
Tue Mar 25 02:59:42 PDT 2025


Hi Yunhui,

On 03/03/2025 09:34, Yunhui Cui wrote:
> Firmware randomly releases cores, so CPU numbers don't linearly map
> to hartids. When the system has an exception, we care more about hartids.
> Adding "dyndbg="file smpboot.c +p" loglevel=8" to the cmdline can output
> the hartid.
>
> Signed-off-by: Yunhui Cui <cuiyunhui at bytedance.com>
> ---
>   arch/riscv/kernel/smp.c     | 2 ++
>   arch/riscv/kernel/smpboot.c | 4 ++++
>   2 files changed, 6 insertions(+)
>
> diff --git a/arch/riscv/kernel/smp.c b/arch/riscv/kernel/smp.c
> index d58b5e751286..e650dec44817 100644
> --- a/arch/riscv/kernel/smp.c
> +++ b/arch/riscv/kernel/smp.c
> @@ -48,6 +48,8 @@ EXPORT_SYMBOL_GPL(__cpuid_to_hartid_map);
>   void __init smp_setup_processor_id(void)
>   {
>   	cpuid_to_hartid_map(0) = boot_cpu_hartid;
> +
> +	pr_info("Booting Linux on hartid %lu\n", boot_cpu_hartid);
>   }
>   
>   static DEFINE_PER_CPU_READ_MOSTLY(int, ipi_dummy_dev);
> diff --git a/arch/riscv/kernel/smpboot.c b/arch/riscv/kernel/smpboot.c
> index e36d20205bd7..601a321e0f17 100644
> --- a/arch/riscv/kernel/smpboot.c
> +++ b/arch/riscv/kernel/smpboot.c
> @@ -231,6 +231,10 @@ asmlinkage __visible void smp_callin(void)
>   	riscv_ipi_enable();
>   
>   	numa_add_cpu(curr_cpuid);
> +
> +	pr_debug("CPU%u: Booted secondary hartid %lu\n", curr_cpuid,
> +		cpuid_to_hartid_map(curr_cpuid));
> +
>   	set_cpu_online(curr_cpuid, true);
>   
>   	/*


Reviewed-by: Alexandre Ghiti <alexghiti at rivosinc.com>

Thanks,

Alex




More information about the linux-riscv mailing list