Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 46c48f22 authored by Russell King's avatar Russell King
Browse files

ARM: SMP: provide accessors for irq_stat data



Provide __inc_irq_stat() and __get_irq_stat() to increment and
read the irq stat counters.

Reviewed-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent ec405ea9
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -14,6 +14,9 @@ typedef struct {

#include <linux/irq_cpustat.h>	/* Standard mappings for irq_cpustat_t above */

#define __inc_irq_stat(cpu, member)	__IRQ_STAT(cpu, member)++
#define __get_irq_stat(cpu, member)	__IRQ_STAT(cpu, member)

#if NR_IRQS > 512
#define HARDIRQ_BITS	10
#elif NR_IRQS > 256
+2 −2
Original line number Diff line number Diff line
@@ -423,7 +423,7 @@ asmlinkage void __exception do_local_timer(struct pt_regs *regs)
	int cpu = smp_processor_id();

	if (local_timer_ack()) {
		irq_stat[cpu].local_timer_irqs++;
		__inc_irq_stat(cpu, local_timer_irqs);
		ipi_timer();
	}

@@ -437,7 +437,7 @@ void show_local_irqs(struct seq_file *p)
	seq_printf(p, "LOC: ");

	for_each_present_cpu(cpu)
		seq_printf(p, "%10u ", irq_stat[cpu].local_timer_irqs);
		seq_printf(p, "%10u ", __get_irq_stat(cpu, local_timer_irqs));

	seq_putc(p, '\n');
}