Re: [PATCH 2/4] irq: allocate irq_desc_ptrs array based on nr_irqs

Ingo Molnar
2009-01-11T01:07:30Z

* Mike Travis <travis@sgi.com> wrote:

> Ingo Molnar wrote:
> > * Mike Travis <travis@sgi.com> wrote:
> >
> >> +++ linux-2.6-for-ingo/kernel/irq/internals.h
> >> @@ -16,7 +16,11 @@ extern int __irq_set_trigger(struct irq_
> >> extern struct lock_class_key irq_desc_lock_class;
> >> extern void init_kstat_irqs(struct irq_desc *desc, int cpu, int nr);
> >> extern spinlock_t sparse_irq_lock;
> >> +#ifdef CONFIG_SPARSE_IRQ
> >> +extern struct irq_desc **irq_desc_ptrs;
> >> +#else
> >> extern struct irq_desc *irq_desc_ptrs[NR_IRQS];
> >> +#endif
> >
> > why the #ifdef? irq_desc_ptrs is only defined and used by sparseirq.
> >
> > Ingo
>
> Hmm, good point. I just modified as it was.
>
> Should it only be:
>
> #ifdef CONFIG_SPARSE_IRQ
> extern struct irq_desc **irq_desc_ptrs;
> #endif
>
> Or do we normally declare something even though it won't be defined anywhere?

yeah, we tend to skip the #ifdefs whenever we can do so unpunished.

Ingo