On 06/19/2013 05:59 PM, Thomas Gleixner wrote: > Lockdep tracks lock ordering and the context in which a lock is > taken. The timer base lock can be taken in interrupt context, so it > always needs to be taken with interrupts disabled. That's what lockdep > cares about. > > And > spin_lock_irqsave(&l1, flags); > spin_unlock(&l1); > spin_lock(&l2); > spin_unlock_irqrestore(&l2, flags); > > fulfils that for both l1 and l2. > > It does not matter whether the code pathes are different, what matters > is that they are semantically the same. And that's the case.
But I feel, they are not semantically the same. if CONFIG_LOCKDEP is not defined, spin_lock_irqsave() should call do_raw_spin_lock_flags(), not call LOCK_CONTENDED(). Thanks. -- Chen Gang Asianux Corporation -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

