> In the uncontended case, doing spin_unlock_wait will be similar to > spin_can_lock. This, when combined with a cmpxchg, is still faster > than doing 2 atomic operations in spin_lock/spin_unlock.
I'm totally against any new users of spin_unlock_wait() It has bizarre semantics, most likely will make various lock optimizations impossible, it's race condition hell for most users etc. spin_can_lock() is not quite as bad has a lot of the similar problems. > BTW, spin_can_lock is just the negation of spin_is_locked. e.g. with elision it's not. -Andi -- a...@linux.intel.com -- Speaking for myself only. -- 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/