Commit fa680c7c authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

sparc: Use generic show_interrupts()



Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Cc: sparclinux@vger.kernel.org
parent 394d441b
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -52,6 +52,7 @@ config SPARC64
	select PERF_USE_VMALLOC
	select HAVE_GENERIC_HARDIRQS
	select GENERIC_HARDIRQS_NO_DEPRECATED
	select GENERIC_IRQ_SHOW
	select IRQ_PREFLOW_FASTEOI

config ARCH_DEFCONFIG
+6 −39
Original line number Diff line number Diff line
@@ -162,47 +162,14 @@ void irq_free(unsigned int irq)
/*
 * /proc/interrupts printing:
 */

int show_interrupts(struct seq_file *p, void *v)
int arch_show_interrupts(struct seq_file *p, int prec)
{
	int i = *(loff_t *) v, j;
	struct irqaction * action;
	unsigned long flags;
	int j;

	if (i == 0) {
		seq_printf(p, "           ");
		for_each_online_cpu(j)
			seq_printf(p, "CPU%d       ",j);
		seq_putc(p, '\n');
	}

	if (i < NR_IRQS) {
		raw_spin_lock_irqsave(&irq_desc[i].lock, flags);
		action = irq_desc[i].action;
		if (!action)
			goto skip;
		seq_printf(p, "%3d: ",i);
#ifndef CONFIG_SMP
		seq_printf(p, "%10u ", kstat_irqs(i));
#else
		for_each_online_cpu(j)
			seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
#endif
		seq_printf(p, " %9s", irq_desc[i].irq_data.chip->name);
		seq_printf(p, "  %s", action->name);

		for (action=action->next; action; action = action->next)
			seq_printf(p, ", %s", action->name);

		seq_putc(p, '\n');
skip:
		raw_spin_unlock_irqrestore(&irq_desc[i].lock, flags);
	} else if (i == NR_IRQS) {
	seq_printf(p, "NMI: ");
	for_each_online_cpu(j)
		seq_printf(p, "%10u ", cpu_data(j).__nmi_count);
	seq_printf(p, "     Non-maskable interrupts\n");
	}
	return 0;
}