[S390] irq: have detailed statistics for interrupt types

Up to now /proc/interrupts only has statistics for external and i/o
interrupts but doesn't split up them any further.
This patch adds a line for every single interrupt source so that it
is possible to easier tell what the machine is/was doing.
Part of the output now looks like this;

           CPU0       CPU2       CPU4
EXT:       3898       4232       2305
I/O:        782        315        245
CLK:       1029       1964        727   [EXT] Clock Comparator
IPI:       2868       2267       1577   [EXT] Signal Processor
TMR:          0          0          0   [EXT] CPU Timer
TAL:          0          0          0   [EXT] Timing Alert
PFL:          0          0          0   [EXT] Pseudo Page Fault
[...]
NMI:          0          1          1   [NMI] Machine Checks

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
Heiko Carstens
2011-01-05 12:47:28 +01:00
committed by Martin Schwidefsky
parent 545b288dcb
commit 052ff461c8
11 changed files with 56 additions and 20 deletions

View File

@@ -1,23 +1,22 @@
#ifndef _ASM_IRQ_H
#define _ASM_IRQ_H
#ifdef __KERNEL__
#include <linux/hardirq.h>
/*
* the definition of irqs has changed in 2.5.46:
* NR_IRQS is no longer the number of i/o
* interrupts (65536), but rather the number
* of interrupt classes (2).
* Only external and i/o interrupts make much sense here (CH).
*/
enum interruption_class {
EXTERNAL_INTERRUPT,
IO_INTERRUPT,
EXTINT_CLK,
EXTINT_IPI,
EXTINT_TMR,
EXTINT_TLA,
EXTINT_PFL,
EXTINT_DSD,
EXTINT_VRT,
EXTINT_SCP,
EXTINT_IUC,
NMI_NMI,
NR_IRQS,
};
#endif /* __KERNEL__ */
#endif
#endif /* _ASM_IRQ_H */