On Thu, 24 Jan 2013 19:50:57 -0500 Steven Rostedt <rost...@goodmis.org> wrote:
> These changes are fine and wont hurt -rt. But thanks for think about > us :-) Thanks (tglx) for writing a useful changelog ;) > > > > Also, I believe your patch permits this cleanup: > > > > --- a/kernel/mutex-debug.h~mutex-use-spin_lock-instead-of-arch_spin_lock-fix > > +++ a/kernel/mutex-debug.h > > @@ -42,14 +42,12 @@ static inline void mutex_clear_owner(str > > struct mutex *l = container_of(lock, struct mutex, wait_lock); \ > > \ > > DEBUG_LOCKS_WARN_ON(in_interrupt()); \ > > - local_irq_save(flags); \ > > - spin_lock(lock); \ > > + spin_lock_irqsave(lock, flags); \ > > DEBUG_LOCKS_WARN_ON(l->magic != l); \ > > } while (0) > > > > #define spin_unlock_mutex(lock, flags) \ > > do { \ > > - spin_unlock(lock); \ > > - local_irq_restore(flags); \ > > + spin_unlock_irqrestore(lock, flags); \ > > preempt_check_resched(); \ > > } while (0) > > Actually this perhaps hurts lockdep. We want to keep the > arch_spin_(un)lock() versions because each spin_lock() and spin_unlock() > needs to be verified by lockdep. Lockdep also verifies mutex locks. But > with this change, for every mutex, it's going to also analyze a > spin_lock and spin_unlock twice each (one for mutex lock and one for > unlock). As this is just locking the mutex internals, it may not be > necessary to debug it via lockdep. Hence we probably want to keep the > arch_* version. In what way is this actually a problem? lockdep will have more work to do (and given the frequency of mutex_lock/unlock, that overhead may be significant). Anything else? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/