sparseirq: use kstat_irqs_cpu instead
Impact: build fix Ingo Molnar wrote: > tip/arch/blackfin/kernel/irqchip.c: In function 'show_interrupts': > tip/arch/blackfin/kernel/irqchip.c:85: error: 'struct kernel_stat' has no member named 'irqs' > make[2]: *** [arch/blackfin/kernel/irqchip.o] Error 1 > make[2]: *** Waiting for unfinished jobs.... > So could move kstat_irqs array to irq_desc struct. (s390, m68k, sparc) are not touched yet, because they don't support genirq Signed-off-by: Yinghai Lu <yinghai@kernel.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Родитель
d7e51e6689
Коммит
dee4102a9a
|
@ -82,7 +82,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
goto skip;
|
goto skip;
|
||||||
seq_printf(p, "%3d: ", i);
|
seq_printf(p, "%3d: ", i);
|
||||||
for_each_online_cpu(j)
|
for_each_online_cpu(j)
|
||||||
seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]);
|
seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
|
||||||
seq_printf(p, " %8s", irq_desc[i].chip->name);
|
seq_printf(p, " %8s", irq_desc[i].chip->name);
|
||||||
seq_printf(p, " %s", action->name);
|
seq_printf(p, " %s", action->name);
|
||||||
for (action = action->next; action; action = action->next)
|
for (action = action->next; action; action = action->next)
|
||||||
|
|
|
@ -74,7 +74,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
if (action) {
|
if (action) {
|
||||||
seq_printf(p, "%3d: ", i);
|
seq_printf(p, "%3d: ", i);
|
||||||
for_each_present_cpu(cpu)
|
for_each_present_cpu(cpu)
|
||||||
seq_printf(p, "%10u ", kstat_cpu(cpu).irqs[i]);
|
seq_printf(p, "%10u ", kstat_irqs_cpu(i, cpu));
|
||||||
seq_printf(p, " %10s", irq_desc[i].chip->name ? : "-");
|
seq_printf(p, " %10s", irq_desc[i].chip->name ? : "-");
|
||||||
seq_printf(p, " %s", action->name);
|
seq_printf(p, " %s", action->name);
|
||||||
for (action = action->next;
|
for (action = action->next;
|
||||||
|
|
|
@ -183,7 +183,7 @@ asmlinkage void do_IRQ(int irq)
|
||||||
#if defined(CONFIG_PROC_FS)
|
#if defined(CONFIG_PROC_FS)
|
||||||
int show_interrupts(struct seq_file *p, void *v)
|
int show_interrupts(struct seq_file *p, void *v)
|
||||||
{
|
{
|
||||||
int i = *(loff_t *) v, j;
|
int i = *(loff_t *) v;
|
||||||
struct irqaction * action;
|
struct irqaction * action;
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
|
||||||
|
@ -196,7 +196,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
if (!action)
|
if (!action)
|
||||||
goto unlock;
|
goto unlock;
|
||||||
seq_printf(p, "%3d: ",i);
|
seq_printf(p, "%3d: ",i);
|
||||||
seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]);
|
seq_printf(p, "%10u ", kstat_irqs(i));
|
||||||
seq_printf(p, " %14s", irq_desc[i].chip->name);
|
seq_printf(p, " %14s", irq_desc[i].chip->name);
|
||||||
seq_printf(p, "-%-8s", irq_desc[i].name);
|
seq_printf(p, "-%-8s", irq_desc[i].name);
|
||||||
seq_printf(p, " %s", action->name);
|
seq_printf(p, " %s", action->name);
|
||||||
|
|
|
@ -80,7 +80,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
seq_printf(p, "%10u ", kstat_irqs(i));
|
seq_printf(p, "%10u ", kstat_irqs(i));
|
||||||
#else
|
#else
|
||||||
for_each_online_cpu(j) {
|
for_each_online_cpu(j) {
|
||||||
seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]);
|
seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
seq_printf(p, " %14s", irq_desc[i].chip->name);
|
seq_printf(p, " %14s", irq_desc[i].chip->name);
|
||||||
|
|
|
@ -49,7 +49,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
seq_printf(p, "%10u ", kstat_irqs(i));
|
seq_printf(p, "%10u ", kstat_irqs(i));
|
||||||
#else
|
#else
|
||||||
for_each_online_cpu(j)
|
for_each_online_cpu(j)
|
||||||
seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]);
|
seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
|
||||||
#endif
|
#endif
|
||||||
seq_printf(p, " %14s", irq_desc[i].chip->typename);
|
seq_printf(p, " %14s", irq_desc[i].chip->typename);
|
||||||
seq_printf(p, " %s", action->name);
|
seq_printf(p, " %s", action->name);
|
||||||
|
|
|
@ -108,7 +108,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
seq_printf(p, "%10u ", kstat_irqs(i));
|
seq_printf(p, "%10u ", kstat_irqs(i));
|
||||||
#else
|
#else
|
||||||
for_each_online_cpu(j)
|
for_each_online_cpu(j)
|
||||||
seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]);
|
seq_printf(p, "%10u ", kstat_cpu(i, j));
|
||||||
#endif
|
#endif
|
||||||
seq_printf(p, " %14s", irq_desc[i].chip->name);
|
seq_printf(p, " %14s", irq_desc[i].chip->name);
|
||||||
seq_printf(p, " %s", action->name);
|
seq_printf(p, " %s", action->name);
|
||||||
|
|
|
@ -221,7 +221,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
if (action) {
|
if (action) {
|
||||||
seq_printf(p, "%3d: ", i);
|
seq_printf(p, "%3d: ", i);
|
||||||
for_each_present_cpu(cpu)
|
for_each_present_cpu(cpu)
|
||||||
seq_printf(p, "%10u ", kstat_cpu(cpu).irqs[i]);
|
seq_printf(p, "%10u ", kstat_irqs_cpu(i, cpu));
|
||||||
seq_printf(p, " %14s.%u", irq_desc[i].chip->name,
|
seq_printf(p, " %14s.%u", irq_desc[i].chip->name,
|
||||||
(GxICR(i) & GxICR_LEVEL) >>
|
(GxICR(i) & GxICR_LEVEL) >>
|
||||||
GxICR_LEVEL_SHIFT);
|
GxICR_LEVEL_SHIFT);
|
||||||
|
|
|
@ -183,7 +183,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
seq_printf(p, "%3d: ", i);
|
seq_printf(p, "%3d: ", i);
|
||||||
#ifdef CONFIG_SMP
|
#ifdef CONFIG_SMP
|
||||||
for_each_online_cpu(j)
|
for_each_online_cpu(j)
|
||||||
seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]);
|
seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
|
||||||
#else
|
#else
|
||||||
seq_printf(p, "%10u ", kstat_irqs(i));
|
seq_printf(p, "%10u ", kstat_irqs(i));
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -190,7 +190,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
seq_printf(p, "%3d: ", i);
|
seq_printf(p, "%3d: ", i);
|
||||||
#ifdef CONFIG_SMP
|
#ifdef CONFIG_SMP
|
||||||
for_each_online_cpu(j)
|
for_each_online_cpu(j)
|
||||||
seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]);
|
seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
|
||||||
#else
|
#else
|
||||||
seq_printf(p, "%10u ", kstat_irqs(i));
|
seq_printf(p, "%10u ", kstat_irqs(i));
|
||||||
#endif /* CONFIG_SMP */
|
#endif /* CONFIG_SMP */
|
||||||
|
|
|
@ -254,7 +254,7 @@ static void handle_iic_irq(unsigned int irq, struct irq_desc *desc)
|
||||||
goto out_eoi;
|
goto out_eoi;
|
||||||
}
|
}
|
||||||
|
|
||||||
kstat_cpu(cpu).irqs[irq]++;
|
kstat_incr_irqs_this_cpu(irq, desc);
|
||||||
|
|
||||||
/* Mark the IRQ currently in progress.*/
|
/* Mark the IRQ currently in progress.*/
|
||||||
desc->status |= IRQ_INPROGRESS;
|
desc->status |= IRQ_INPROGRESS;
|
||||||
|
|
|
@ -51,7 +51,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
goto unlock;
|
goto unlock;
|
||||||
seq_printf(p, "%3d: ",i);
|
seq_printf(p, "%3d: ",i);
|
||||||
for_each_online_cpu(j)
|
for_each_online_cpu(j)
|
||||||
seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]);
|
seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
|
||||||
seq_printf(p, " %14s", irq_desc[i].chip->name);
|
seq_printf(p, " %14s", irq_desc[i].chip->name);
|
||||||
seq_printf(p, "-%-8s", irq_desc[i].name);
|
seq_printf(p, "-%-8s", irq_desc[i].name);
|
||||||
seq_printf(p, " %s", action->name);
|
seq_printf(p, " %s", action->name);
|
||||||
|
|
|
@ -42,7 +42,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
seq_printf(p, "%10u ", kstat_irqs(i));
|
seq_printf(p, "%10u ", kstat_irqs(i));
|
||||||
#else
|
#else
|
||||||
for_each_online_cpu(j)
|
for_each_online_cpu(j)
|
||||||
seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]);
|
seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
|
||||||
#endif
|
#endif
|
||||||
seq_printf(p, " %14s", irq_desc[i].chip->typename);
|
seq_printf(p, " %14s", irq_desc[i].chip->typename);
|
||||||
seq_printf(p, " %s", action->name);
|
seq_printf(p, " %s", action->name);
|
||||||
|
|
|
@ -99,7 +99,7 @@ int show_interrupts(struct seq_file *p, void *v)
|
||||||
seq_printf(p, "%10u ", kstat_irqs(i));
|
seq_printf(p, "%10u ", kstat_irqs(i));
|
||||||
#else
|
#else
|
||||||
for_each_online_cpu(j)
|
for_each_online_cpu(j)
|
||||||
seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]);
|
seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
|
||||||
#endif
|
#endif
|
||||||
seq_printf(p, " %14s", irq_desc[i].chip->typename);
|
seq_printf(p, " %14s", irq_desc[i].chip->typename);
|
||||||
seq_printf(p, " %s", action->name);
|
seq_printf(p, " %s", action->name);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче