From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Zijlstra Subject: Re: [PATCH -v7][RFC]: mutex: implement adaptive spinning Date: Fri, 09 Jan 2009 10:28:25 +0100 Message-ID: <1231493305.11687.528.camel@twins> References: <1231441350.14304.48.camel@think.oraclecorp.com> Mime-Version: 1.0 Content-Type: text/plain Cc: Chris Mason , Steven Rostedt , Ingo Molnar , paulmck@linux.vnet.ibm.com, Gregory Haskins , Matthew Wilcox , Andi Kleen , Andrew Morton , Linux Kernel Mailing List , linux-fsdevel , linux-btrfs , Thomas Gleixner , Nick Piggin , Peter Morreale , Sven Dietrich To: Linus Torvalds Return-path: In-Reply-To: List-ID: On Thu, 2009-01-08 at 11:13 -0800, Linus Torvalds wrote: > > On Thu, 8 Jan 2009, Chris Mason wrote: > > > > It is less fair though, the 50 proc parallel creates had a much bigger > > span between the first and last proc's exit time. This isn't a huge > > shock, I think it shows the hot path is closer to a real spin lock. > > Actually, the real spin locks are now fair. We use ticket locks on x86. > We _could_ certainly aim for using ticket locks for mutexes too, that > might be quite nice. Not really, ticket locks cannot handle a spinner going away - and we need that here. I've googled around a bit and MCS locks (http://www.cs.rice.edu/~johnmc/papers/asplos91.pdf) look like a viable way to gain fairness in our situation.