Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

s390/eadm_sch: add support for irq statistics

Add support for EADM interrupt statistics in /proc/interrupts.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>

authored by

Sebastian Ott and committed by
Martin Schwidefsky
2e73c2cf eadb86ab

+5
+1
arch/s390/include/asm/irq.h
··· 30 30 IOINT_CLW, 31 31 IOINT_CTC, 32 32 IOINT_APB, 33 + IOINT_ADM, 33 34 IOINT_CSC, 34 35 NMI_NMI, 35 36 NR_IRQS,
+1
arch/s390/kernel/irq.c
··· 55 55 {.name = "CLW", .desc = "[I/O] CLAW" }, 56 56 {.name = "CTC", .desc = "[I/O] CTC" }, 57 57 {.name = "APB", .desc = "[I/O] AP Bus" }, 58 + {.name = "ADM", .desc = "[I/O] EADM Subchannel" }, 58 59 {.name = "CSC", .desc = "[I/O] CHSC Subchannel" }, 59 60 {.name = "NMI", .desc = "[NMI] Machine Check" }, 60 61 };
+3
drivers/s390/cio/eadm_sch.c
··· 5 5 * Author(s): Sebastian Ott <sebott@linux.vnet.ibm.com> 6 6 */ 7 7 8 + #include <linux/kernel_stat.h> 8 9 #include <linux/workqueue.h> 9 10 #include <linux/spinlock.h> 10 11 #include <linux/device.h> ··· 138 137 139 138 EADM_LOG(6, "irq"); 140 139 EADM_LOG_HEX(6, irb, sizeof(*irb)); 140 + 141 + kstat_cpu(smp_processor_id()).irqs[IOINT_ADM]++; 141 142 142 143 if ((scsw->stctl & (SCSW_STCTL_ALERT_STATUS | SCSW_STCTL_STATUS_PEND)) 143 144 && scsw->eswf == 1 && irb->esw.eadm.erw.r)