On Wed, 23 Oct 2013, Waiman Long wrote:On 10/23/2013 08:00 AM, walken@xxxxxxxxxx wrote:The unification has to be done as a part of this series. Cleanups areIt probably can, but the unification can wait until the code are in.+ /*I believe this could be unified with mspin_lock() / mspin_unlock() in
+ * Wait until the next one in queue set up the next field
+ */
+ while (likely(!(next = ACCESS_ONCE(node->next))))
+ cpu_relax();
+ /*
+ * The next one in queue is now at the head
+ */
+notify_next:
+ barrier();
+ ACCESS_ONCE(next->wait) = false;
+ smp_wmb();
+}
kernel/mutex.c ? (there is already talk of extending these functions
to be used by rwsem for adaptive spinning as well...)
part of the development process of new code and not an optional
feature.
Thanks,
tglx