aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYinghai Lu <yinghai@kernel.org>2009-01-11 16:35:56 -0500
committerIngo Molnar <mingo@elte.hu>2009-01-12 14:01:12 -0500
commit0b0f0b1c2c87de299df6f92a8ffc0a73bd1bb960 (patch)
treec5d047cc71926b2ac5d657cce1adc577f92f4f9b
parentd178a1eb5c034df1f74a2b67bf311afa5d6b8e95 (diff)
sparseirq: use kstat_irqs_cpu on non-x86 architectures too
so we could move kstat_irqs array to irq_desc struct. Signed-off-by: Yinghai Lu <yinghai@kernel.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/alpha/kernel/irq.c2
-rw-r--r--arch/alpha/kernel/irq_alpha.c2
-rw-r--r--arch/arm/kernel/irq.c2
-rw-r--r--arch/arm/mach-ns9xxx/irq.c3
-rw-r--r--arch/avr32/kernel/irq.c2
-rw-r--r--arch/cris/kernel/irq.c2
-rw-r--r--arch/mips/kernel/irq.c2
7 files changed, 7 insertions, 8 deletions
diff --git a/arch/alpha/kernel/irq.c b/arch/alpha/kernel/irq.c
index 703731accda6..430550bd1eb6 100644
--- a/arch/alpha/kernel/irq.c
+++ b/arch/alpha/kernel/irq.c
@@ -90,7 +90,7 @@ show_interrupts(struct seq_file *p, void *v)
90 seq_printf(p, "%10u ", kstat_irqs(irq)); 90 seq_printf(p, "%10u ", kstat_irqs(irq));
91#else 91#else
92 for_each_online_cpu(j) 92 for_each_online_cpu(j)
93 seq_printf(p, "%10u ", kstat_cpu(j).irqs[irq]); 93 seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
94#endif 94#endif
95 seq_printf(p, " %14s", irq_desc[irq].chip->typename); 95 seq_printf(p, " %14s", irq_desc[irq].chip->typename);
96 seq_printf(p, " %c%s", 96 seq_printf(p, " %c%s",
diff --git a/arch/alpha/kernel/irq_alpha.c b/arch/alpha/kernel/irq_alpha.c
index e16aeb6e79ef..67c19f8a9944 100644
--- a/arch/alpha/kernel/irq_alpha.c
+++ b/arch/alpha/kernel/irq_alpha.c
@@ -64,7 +64,7 @@ do_entInt(unsigned long type, unsigned long vector,
64 smp_percpu_timer_interrupt(regs); 64 smp_percpu_timer_interrupt(regs);
65 cpu = smp_processor_id(); 65 cpu = smp_processor_id();
66 if (cpu != boot_cpuid) { 66 if (cpu != boot_cpuid) {
67 kstat_cpu(cpu).irqs[RTC_IRQ]++; 67 kstat_incr_irqs_this_cpu(RTC_IRQ, irq_to_desc(RTC_IRQ));
68 } else { 68 } else {
69 handle_irq(RTC_IRQ); 69 handle_irq(RTC_IRQ);
70 } 70 }
diff --git a/arch/arm/kernel/irq.c b/arch/arm/kernel/irq.c
index 7141cee1fab7..a285e4a636a6 100644
--- a/arch/arm/kernel/irq.c
+++ b/arch/arm/kernel/irq.c
@@ -76,7 +76,7 @@ int show_interrupts(struct seq_file *p, void *v)
76 76
77 seq_printf(p, "%3d: ", i); 77 seq_printf(p, "%3d: ", i);
78 for_each_present_cpu(cpu) 78 for_each_present_cpu(cpu)
79 seq_printf(p, "%10u ", kstat_cpu(cpu).irqs[i]); 79 seq_printf(p, "%10u ", kstat_irqs_cpu(i, cpu));
80 seq_printf(p, " %10s", irq_desc[i].chip->name ? : "-"); 80 seq_printf(p, " %10s", irq_desc[i].chip->name ? : "-");
81 seq_printf(p, " %s", action->name); 81 seq_printf(p, " %s", action->name);
82 for (action = action->next; action; action = action->next) 82 for (action = action->next; action; action = action->next)
diff --git a/arch/arm/mach-ns9xxx/irq.c b/arch/arm/mach-ns9xxx/irq.c
index 22e0eb6e9ec4..feb0e54a91de 100644
--- a/arch/arm/mach-ns9xxx/irq.c
+++ b/arch/arm/mach-ns9xxx/irq.c
@@ -63,7 +63,6 @@ static struct irq_chip ns9xxx_chip = {
63#else 63#else
64static void handle_prio_irq(unsigned int irq, struct irq_desc *desc) 64static void handle_prio_irq(unsigned int irq, struct irq_desc *desc)
65{ 65{
66 unsigned int cpu = smp_processor_id();
67 struct irqaction *action; 66 struct irqaction *action;
68 irqreturn_t action_ret; 67 irqreturn_t action_ret;
69 68
@@ -72,7 +71,7 @@ static void handle_prio_irq(unsigned int irq, struct irq_desc *desc)
72 BUG_ON(desc->status & IRQ_INPROGRESS); 71 BUG_ON(desc->status & IRQ_INPROGRESS);
73 72
74 desc->status &= ~(IRQ_REPLAY | IRQ_WAITING); 73 desc->status &= ~(IRQ_REPLAY | IRQ_WAITING);
75 kstat_cpu(cpu).irqs[irq]++; 74 kstat_incr_irqs_this_cpu(irq, desc);
76 75
77 action = desc->action; 76 action = desc->action;
78 if (unlikely(!action || (desc->status & IRQ_DISABLED))) 77 if (unlikely(!action || (desc->status & IRQ_DISABLED)))
diff --git a/arch/avr32/kernel/irq.c b/arch/avr32/kernel/irq.c
index a8e767d836aa..9f572229d318 100644
--- a/arch/avr32/kernel/irq.c
+++ b/arch/avr32/kernel/irq.c
@@ -58,7 +58,7 @@ int show_interrupts(struct seq_file *p, void *v)
58 58
59 seq_printf(p, "%3d: ", i); 59 seq_printf(p, "%3d: ", i);
60 for_each_online_cpu(cpu) 60 for_each_online_cpu(cpu)
61 seq_printf(p, "%10u ", kstat_cpu(cpu).irqs[i]); 61 seq_printf(p, "%10u ", kstat_irqs_cpu(i, cpu));
62 seq_printf(p, " %8s", irq_desc[i].chip->name ? : "-"); 62 seq_printf(p, " %8s", irq_desc[i].chip->name ? : "-");
63 seq_printf(p, " %s", action->name); 63 seq_printf(p, " %s", action->name);
64 for (action = action->next; action; action = action->next) 64 for (action = action->next; action; action = action->next)
diff --git a/arch/cris/kernel/irq.c b/arch/cris/kernel/irq.c
index 2dfac8c79090..7f642fcffbfc 100644
--- a/arch/cris/kernel/irq.c
+++ b/arch/cris/kernel/irq.c
@@ -66,7 +66,7 @@ int show_interrupts(struct seq_file *p, void *v)
66 seq_printf(p, "%10u ", kstat_irqs(i)); 66 seq_printf(p, "%10u ", kstat_irqs(i));
67#else 67#else
68 for_each_online_cpu(j) 68 for_each_online_cpu(j)
69 seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); 69 seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
70#endif 70#endif
71 seq_printf(p, " %14s", irq_desc[i].chip->typename); 71 seq_printf(p, " %14s", irq_desc[i].chip->typename);
72 seq_printf(p, " %s", action->name); 72 seq_printf(p, " %s", action->name);
diff --git a/arch/mips/kernel/irq.c b/arch/mips/kernel/irq.c
index 98f336dc3cd0..7b845ba9dff4 100644
--- a/arch/mips/kernel/irq.c
+++ b/arch/mips/kernel/irq.c
@@ -108,7 +108,7 @@ int show_interrupts(struct seq_file *p, void *v)
108 seq_printf(p, "%10u ", kstat_irqs(i)); 108 seq_printf(p, "%10u ", kstat_irqs(i));
109#else 109#else
110 for_each_online_cpu(j) 110 for_each_online_cpu(j)
111 seq_printf(p, "%10u ", kstat_cpu(i, j)); 111 seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
112#endif 112#endif
113 seq_printf(p, " %14s", irq_desc[i].chip->name); 113 seq_printf(p, " %14s", irq_desc[i].chip->name);
114 seq_printf(p, " %s", action->name); 114 seq_printf(p, " %s", action->name);