s390/cio: fix irq statistics
authorSebastian Ott <sebott@linux.vnet.ibm.com>
Thu, 25 Apr 2013 11:01:39 +0000 (13:01 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Fri, 26 Apr 2013 07:07:13 +0000 (09:07 +0200)
When we fetch an interrupt on the CCW console using tsch (via
ccw_device_wait_idle formerly known as wait_cons_dev) we increment
the irq count for the affected interruption class but it is not
accounted as an IO interrupt.

This is broken since commit b603d258a43b4e7339660bdd3b5c25eacd603e54
"s390: remove superfluous tpi from wait_cons_dev"

Fix it so that the sum of the individual interrupts per class matches
the number of IO interrupts again.

Reported-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/cio/cio.c

index af5fd716449fee27a8416df88e19b650c842b27c..935d80b4e9cedb5361d6d18aab013c73f4eab456 100644 (file)
@@ -647,6 +647,7 @@ void cio_tsch(struct subchannel *sch)
                local_bh_disable();
                irq_enter();
        }
+       kstat_incr_irqs_this_cpu(IO_INTERRUPT, NULL);
        if (sch->driver && sch->driver->irq)
                sch->driver->irq(sch);
        else