Re: [PATCH] ARM: smp: Fix IPI alignment in /proc/interrupts
From: Anshuman Khandual
Date: Thu Nov 21 2024 - 04:01:51 EST
On 11/20/24 15:24, Geert Uytterhoeven wrote:
> On a system with less than 1000 interrupts, prec = 3, causing a
> misalignment for the IPI interrupts. E.g. on Koelsch (R-Car M2-W):
>
> 200: 0 0 gpio-rcar 6 Edge SW36
> IPI0: 0 0 CPU wakeup interrupts
> IPI1: 0 0 Timer broadcast interrupts
> IPI2: 1701 2844 Rescheduling interrupts
> IPI3: 10338 21181 Function call interrupts
> IPI4: 0 0 CPU stop interrupts
> IPI5: 651 825 IRQ work interrupts
> IPI6: 0 0 completion interrupts
> Err: 0
>
> Fix this by adopting the same solution as used on arm64.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
> ---
> arch/arm/kernel/smp.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
> index 3431c0553f45cdf5..50999886a8b5cbab 100644
> --- a/arch/arm/kernel/smp.c
> +++ b/arch/arm/kernel/smp.c
> @@ -551,7 +551,8 @@ void show_ipi_list(struct seq_file *p, int prec)
> if (!ipi_desc[i])
> continue;
>
> - seq_printf(p, "%*s%u: ", prec - 1, "IPI", i);
> + seq_printf(p, "%*s%u:%s", prec - 1, "IPI", i,
> + prec >= 4 ? " " : "");
>
> for_each_online_cpu(cpu)
> seq_printf(p, "%10u ", irq_desc_kstat_cpu(ipi_desc[i], cpu));
LGTM
Reviewed-by: Anshuman Khandual <anshuman.khandual@xxxxxxx>