On Wed, 2014-06-11 at 11:37 -0700, Jason Low wrote: > Upon entering the slowpath in __mutex_lock_common(), we try once more to > acquire the mutex. We only try to acquire if (lock->count >= 0). However, > what we actually want here is to try to acquire if the mutex is unlocked > (lock->count == 1). > > This patch changes it so that we only try-acquire the mutex upon entering > the slowpath if it is unlocked, rather than if the lock count is non-negative. > This helps further reduce unnecessary atomic xchg() operations. > > Furthermore, this patch uses !mutex_is_locked(lock) to do the initial > checks for if the lock is free rather than directly calling atomic_read() > on the lock->count, in order to improve readability.
I think this patch can be merged in 2/4, like you had in v1. Otherwise looks good. -- 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/