[S390] ctc: add support for irq statistics
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Wed, 5 Jan 2011 11:47:37 +0000 (12:47 +0100)
committerMartin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com>
Wed, 5 Jan 2011 11:47:26 +0000 (12:47 +0100)
Add support for CTC I/O interrupt statistics in /proc/interrupts.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/include/asm/irq.h
arch/s390/kernel/irq.c
drivers/s390/net/ctcm_main.c

index 2d5943c1c6a191fd11ad4b147be2d4a7d7b33b7f..8c79f9400a36e5f88133f3c78619e33be7665502 100644 (file)
@@ -24,6 +24,7 @@ enum interruption_class {
        IOINT_VMR,
        IOINT_LCS,
        IOINT_CLW,
+       IOINT_CTC,
        NMI_NMI,
        NR_IRQS,
 };
index 406b539f61a9feb2dff48cd0aac0a849b8fd0e38..57ed2b55c2a1f3c936b2ca27631ca58c976fef62 100644 (file)
@@ -41,6 +41,7 @@ static const struct irq_class intrclass_names[] = {
        {.name = "VMR", .desc = "[I/O] Unit Record Devices" },
        {.name = "LCS", .desc = "[I/O] LCS" },
        {.name = "CLW", .desc = "[I/O] CLAW" },
+       {.name = "CTC", .desc = "[I/O] CTC" },
        {.name = "NMI", .desc = "[NMI] Machine Check" },
 };
 
index 2c7d2d9be4d0cd3099f63d2b2690242cc12eed50..4c28459859276dd8ebf0d3dbab55d4a3eeca4e24 100644 (file)
@@ -24,6 +24,7 @@
 #define KMSG_COMPONENT "ctcm"
 #define pr_fmt(fmt) KMSG_COMPONENT ": " fmt
 
+#include <linux/kernel_stat.h>
 #include <linux/module.h>
 #include <linux/init.h>
 #include <linux/kernel.h>
@@ -1204,6 +1205,7 @@ static void ctcm_irq_handler(struct ccw_device *cdev,
        int cstat;
        int dstat;
 
+       kstat_cpu(smp_processor_id()).irqs[IOINT_CTC]++;
        CTCM_DBF_TEXT_(TRACE, CTC_DBF_DEBUG,
                "Enter %s(%s)", CTCM_FUNTAIL, dev_name(&cdev->dev));