diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2013-01-02 16:54:12 +0100 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2013-01-08 10:57:07 +0100 |
commit | 93f3b2ee0abff5438e74cc90cf816429248cc8eb (patch) | |
tree | d637ecbd55415b1e4fbc18122393b033febdf70c /arch/s390 | |
parent | 420f42ecf48a926ba775ec7d7294425f004b6ade (diff) | |
download | blackbird-op-linux-93f3b2ee0abff5438e74cc90cf816429248cc8eb.tar.gz blackbird-op-linux-93f3b2ee0abff5438e74cc90cf816429248cc8eb.zip |
s390/irq: count cpu restart events
Count CPU Restart events and make them visible via /proc/interrupts.
Every CPU hotplug (online) event will increase the per cpu counter.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390')
-rw-r--r-- | arch/s390/include/asm/irq.h | 1 | ||||
-rw-r--r-- | arch/s390/kernel/irq.c | 1 | ||||
-rw-r--r-- | arch/s390/kernel/smp.c | 1 |
3 files changed, 3 insertions, 0 deletions
diff --git a/arch/s390/include/asm/irq.h b/arch/s390/include/asm/irq.h index c98dcac70ae0..7def77302d63 100644 --- a/arch/s390/include/asm/irq.h +++ b/arch/s390/include/asm/irq.h @@ -42,6 +42,7 @@ enum interruption_class { IRQIO_PCI, IRQIO_MSI, NMI_NMI, + CPU_RST, NR_ARCH_IRQS }; diff --git a/arch/s390/kernel/irq.c b/arch/s390/kernel/irq.c index 5f5462447aff..9df824ea1667 100644 --- a/arch/s390/kernel/irq.c +++ b/arch/s390/kernel/irq.c @@ -82,6 +82,7 @@ static const struct irq_class irqclass_sub_desc[NR_ARCH_IRQS] = { [IRQIO_PCI] = {.name = "PCI", .desc = "[I/O] PCI Interrupt" }, [IRQIO_MSI] = {.name = "MSI", .desc = "[I/O] MSI Interrupt" }, [NMI_NMI] = {.name = "NMI", .desc = "[NMI] Machine Check"}, + [CPU_RST] = {.name = "RST", .desc = "[CPU] CPU Restart"}, }; /* diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c index 4a36d5b5e4c9..7433a2f9e5cc 100644 --- a/arch/s390/kernel/smp.c +++ b/arch/s390/kernel/smp.c @@ -709,6 +709,7 @@ static void __cpuinit smp_start_secondary(void *cpuvoid) pfault_init(); notify_cpu_starting(smp_processor_id()); set_cpu_online(smp_processor_id(), true); + inc_irq_stat(CPU_RST); local_irq_enable(); /* cpu_idle will call schedule for us */ cpu_idle(); |