diff options
author | Yinghai Lu <yhlu.kernel@gmail.com> | 2008-08-25 15:41:19 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-10-16 10:53:04 -0400 |
commit | 8c464a4b23ca283b414022ebc77787f3c7040fa7 (patch) | |
tree | 1d62a78b0af21492289d015c81270683f6bbe0bd /kernel/irq/handle.c | |
parent | e492c5ae85428d4a3815d06bf308c590120b928b (diff) |
sparseirq: move kstat_irqs from kstat to irq_desc - fix
fix non-sparseirq architectures.
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/irq/handle.c')
-rw-r--r-- | kernel/irq/handle.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/kernel/irq/handle.c b/kernel/irq/handle.c index d638a911cbc1..eae69373a9c6 100644 --- a/kernel/irq/handle.c +++ b/kernel/irq/handle.c | |||
@@ -34,7 +34,11 @@ void | |||
34 | handle_bad_irq(unsigned int irq, struct irq_desc *desc) | 34 | handle_bad_irq(unsigned int irq, struct irq_desc *desc) |
35 | { | 35 | { |
36 | print_irq_desc(irq, desc); | 36 | print_irq_desc(irq, desc); |
37 | #ifdef CONFIG_HAVE_DYN_ARRAY | ||
37 | kstat_irqs_this_cpu(desc)++; | 38 | kstat_irqs_this_cpu(desc)++; |
39 | #else | ||
40 | kstat_irqs_this_cpu(irq)++; | ||
41 | #endif | ||
38 | ack_bad_irq(irq); | 42 | ack_bad_irq(irq); |
39 | } | 43 | } |
40 | 44 | ||
@@ -401,7 +405,11 @@ unsigned int __do_IRQ(unsigned int irq) | |||
401 | struct irqaction *action; | 405 | struct irqaction *action; |
402 | unsigned int status; | 406 | unsigned int status; |
403 | 407 | ||
408 | #ifdef CONFIG_HAVE_DYN_ARRAY | ||
404 | kstat_irqs_this_cpu(desc)++; | 409 | kstat_irqs_this_cpu(desc)++; |
410 | #else | ||
411 | kstat_irqs_this_cpu(irq)++; | ||
412 | #endif | ||
405 | if (CHECK_IRQ_PER_CPU(desc->status)) { | 413 | if (CHECK_IRQ_PER_CPU(desc->status)) { |
406 | irqreturn_t action_ret; | 414 | irqreturn_t action_ret; |
407 | 415 | ||
@@ -501,10 +509,12 @@ void early_init_irq_lock_class(void) | |||
501 | } | 509 | } |
502 | #endif | 510 | #endif |
503 | 511 | ||
512 | #ifdef CONFIG_HAVE_DYN_ARRAY | ||
504 | unsigned int kstat_irqs_cpu(unsigned int irq, int cpu) | 513 | unsigned int kstat_irqs_cpu(unsigned int irq, int cpu) |
505 | { | 514 | { |
506 | struct irq_desc *desc = irq_to_desc(irq); | 515 | struct irq_desc *desc = irq_to_desc(irq); |
507 | return desc->kstat_irqs[cpu]; | 516 | return desc->kstat_irqs[cpu]; |
508 | } | 517 | } |
518 | #endif | ||
509 | EXPORT_SYMBOL(kstat_irqs_cpu); | 519 | EXPORT_SYMBOL(kstat_irqs_cpu); |
510 | 520 | ||