Re: [mmotm and linux-next][PATCH] irq: enclose irq_desc_lock_classin CONFIG_LOCKDEP

From: Ingo Molnar
Date: Tue Dec 16 2008 - 05:18:51 EST



* Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:

> On Tue, 16 Dec 2008 17:08:43 +0900 (JST) KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx> wrote:
>
> >
> >
> > Applied after: linux-next.patch
> >
> > ==
> > Subject: [mmotm][PATCH] irq: enclose irq_desc_lock_class in CONFIG_LOCKDEP
> >
> > commit 08678b0841267c1d00d771fe01548d86043d065e introduced
> > irq_desc_lock_class variable.
> > But it is used only if CONFIG_LOCKDEP=Y.
> > otherwise, following warnings happend.
> >
> > CC kernel/irq/handle.o
> > kernel/irq/handle.c:26: warning: 'irq_desc_lock_class' defined but not used
> >
> >
> > Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx>
> > CC: Yinghai Lu <yhlu.kernel@xxxxxxxxx>
> > CC: Ingo Molnar <mingo@xxxxxxx>
> > ---
> > kernel/irq/handle.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > Index: b/kernel/irq/handle.c
> > ===================================================================
> > --- a/kernel/irq/handle.c
> > +++ b/kernel/irq/handle.c
> > @@ -20,10 +20,12 @@
> >
> > #include "internals.h"
> >
> > +#ifdef CONFIG_LOCKDEP
> > /*
> > * lockdep: we want to handle all irq_desc locks as a single lock-class:
> > */
> > static struct lock_class_key irq_desc_lock_class;
> > +#endif
> >
> > /**
> > * handle_bad_irq - handle spurious and unhandled irqs
> >
>
> No, lockdep.h (which we forgot to include) already handles that:
>
> # define lockdep_set_class(lock, key) do { (void)(key); } while (0)
>
> the problem is that the code which references irq_desc_lock_class is
> inside #ifdef CONFIG_SPARSE_IRQ, so this is a better fix:

agreed that this is the better fix - applied to tip/irq/sparseirq, thanks!

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/