sparc32: SMP IPI patches
cover sparc32: SMP IPI patches
Hello Dave,
I have made a new set of IPI patches, this time it includes a patch for SUN4M but still missing SUN4D however.
I have tried to use BTFIXUPs and extract some code from the LEON to the common smp_32.c as you suggested. I have left the non-spinlock LEON code around per-cpu work data as we discussed, I think the same argumentation works for sun4m to avoid races when clearing the pending register in the interrupt trap handler.
This time I added some IPI IRQ statistics to the genirq arch_show_interrupts(),
so the patches must be applied to sparc-next containing genirq patches.
Daniel
arch/sparc/Kconfig | 3 +- arch/sparc/include/asm/cpudata_32.h | 5 ++ arch/sparc/include/asm/leon.h | 4 +- arch/sparc/include/asm/smp_32.h | 22 +++---- arch/sparc/kernel/entry.S | 45 +++++++++++++- arch/sparc/kernel/irq_32.c | 10 +++ arch/sparc/kernel/leon_smp.c | 109 ++++++++++++++++++++++++++++++++++- arch/sparc/kernel/smp_32.c | 52 +++++++++++++++-- arch/sparc/kernel/sun4m_smp.c | 29 +++++++++ 9 files changed, 251 insertions(+), 28 deletions(-)
From: Daniel Hellstrom <[email protected]>
Date: Wed, 27 Apr 2011 15:18:43 +0200
Quoted 9 lines
I have made a new set of IPI patches, this time it includes a patch for SUN4M but still missing SUN4D however.
I have tried to use BTFIXUPs and extract some code from the LEON to the common
smp_32.cas you suggested. I have left the non-spinlock LEON code around per-cpu work data as we discussed, I think the same argumentation works for sun4m to avoid races when clearing the pending register in the interrupt trap handler.
Quoted 4 lines
This time I added some IPI IRQ statistics to the genirq
arch_show_interrupts(),
so the patches must be applied to sparc-next containing genirq patches.
All 3 patches applied.
From: David Miller <[email protected]>
Date: Mon, 16 May 2011 13:04:28 -0700 (PDT)
Quoted 12 lines
From: Daniel Hellstrom <[email protected]>
Date: Wed, 27 Apr 2011 15:18:43 +0200Quoted 9 lines
I have made a new set of IPI patches, this time it includes a patch for SUN4M but still missing SUN4D however.
I have tried to use BTFIXUPs and extract some code from the LEON to the common
smp_32.cas you suggested. I have left the non-spinlock LEON code around per-cpu work data as we discussed, I think the same argumentation works for sun4m to avoid races when clearing the pending register in the interrupt trap handler.
Quoted 6 lines
Quoted 4 lines
This time I added some IPI IRQ statistics to the genirq
arch_show_interrupts(),
so the patches must be applied to sparc-next containing genirq patches.All 3 patches applied.
Oops, I see now there was a 4-patch "v2" series, will look that over instead. :-)