diff options
| author | Yinghai Lu <yhlu.kernel@gmail.com> | 2008-08-25 12:41:19 -0700 | 
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-10-16 16:53:04 +0200 | 
| 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  handle_bad_irq(unsigned int irq, struct irq_desc *desc)  {  	print_irq_desc(irq, desc); +#ifdef CONFIG_HAVE_DYN_ARRAY  	kstat_irqs_this_cpu(desc)++; +#else +	kstat_irqs_this_cpu(irq)++; +#endif  	ack_bad_irq(irq);  } @@ -401,7 +405,11 @@ unsigned int __do_IRQ(unsigned int irq)  	struct irqaction *action;  	unsigned int status; +#ifdef CONFIG_HAVE_DYN_ARRAY  	kstat_irqs_this_cpu(desc)++; +#else +	kstat_irqs_this_cpu(irq)++; +#endif  	if (CHECK_IRQ_PER_CPU(desc->status)) {  		irqreturn_t action_ret; @@ -501,10 +509,12 @@ void early_init_irq_lock_class(void)  }  #endif +#ifdef CONFIG_HAVE_DYN_ARRAY  unsigned int kstat_irqs_cpu(unsigned int irq, int cpu)  {  	struct irq_desc *desc = irq_to_desc(irq);  	return desc->kstat_irqs[cpu];  } +#endif  EXPORT_SYMBOL(kstat_irqs_cpu); | 
