Messages in this thread | | | Subject | Re: [patch 2.6.25-rc3] lockdep: add spin_lock_irq_nested() | From | Peter Zijlstra <> | Date | Tue, 26 Feb 2008 10:53:46 +0100 |
| |
On Mon, 2008-02-25 at 14:33 -0800, David Brownell wrote:
> > +#ifdef CONFIG_LOCKDEP > > + > > +/* tell lockdep that this IRQ's locks and its parent's locks are in > > + * different categories, so that it won't detect false recursion. > > + */ > > +static struct lock_class_key gpio_lock_class; > > + > > +static inline void mark_gpio_locking(unsigned gpio_irq) > > +{ > > + lockdep_set_class(&irq_desc[gpio_irq].lock, &gpio_lock_class); > > +} > > + > > +#else > > + > > +static inline void mark_gpio_locking(unsigned gpio_irq) > > +{ > > + /* NOP */ > > +} > > + > > +#endif
Glad to hear this works out for you.
Just one note, you don't need the #ifdef mess here. struct lock_class_key is 0 bytes on !LOCKDEP and lockdep_set_class*() is defined away as well.
| |