Re: [RFC PATCH] mutex: Documentation rewrite

From: Jason Low
Date: Wed May 21 2014 - 17:16:57 EST


On Wed, 2014-05-21 at 10:41 -0700, Davidlohr Bueso wrote:
> From: Davidlohr Bueso <davidlohr@xxxxxx>

> + The MCS lock (proposed by Mellor-Crummey and Scott) is a simple spinlock
> + with the desirable properties of being fair and with each cpu trying
> + to acquire the lock spinning on a local variable. It avoids expensive
> + cacheline bouncing that common test-and-set spinlock implementations
> + incur. An MCS-like lock is specially tailored for optimistic spinning
> + for sleeping lock implementation.

Would it be helpful to also briefly mention the benefit of using the
specially tailored MCS lock? Maybe something along the lines of: an
important feature of the customized MCS lock is that it has the extra
property that spinners are able to exit the MCS spinlock queue when they
needs to reschedule. This further helps avoid situations where MCS
spinners that need to reschedule would continue waiting to spin on mutex
owner, only to go directly to slowpath upon obtaining the MCS lock.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/