Re: [PATCH 2/2] futex: lockless wakeups

2015-04-20 Thread Davidlohr Bueso
On Mon, 2015-04-20 at 16:57 +0200, Peter Zijlstra wrote: > Haha, you dug that out did you ;-) > > Does this patch on its own actually help anything? Back when I wrote > that there was the vague hope it would actually help some of the > client-server ping-pong workloads, where the client does sync

Re: [PATCH 2/2] futex: lockless wakeups

2015-04-20 Thread Peter Zijlstra
On Mon, Apr 20, 2015 at 06:55:39AM -0700, Davidlohr Bueso wrote: > I have been using this from Peter to test against: > > diff --git a/include/linux/sched.h b/include/linux/sched.h > index 6d77432..fdf1f68 100644 > --- a/include/linux/sched.h > +++ b/include/linux/sched.h > @@ -214,9 +214,10 @@ pr

Re: [PATCH 2/2] futex: lockless wakeups

2015-04-20 Thread Linus Torvalds
On Sun, Apr 19, 2015 at 12:17 PM, Davidlohr Bueso wrote: > > Naturally, this can cause spurious wakeups. However there is core code > that cannot handle them afaict, and furthermore tglx does have the point > that other events can already trigger them anyway. Indeed. We need to make this *very* e

Re: [PATCH 2/2] futex: lockless wakeups

2015-04-20 Thread Davidlohr Bueso
On Mon, 2015-04-20 at 08:18 +0200, Ingo Molnar wrote: > Please write a small description we can cite to driver authors once > the (inevitable) breakages appear, outlining this new behavior and its > implications, so that we can fix any remaining bugs ASAP. I wouldn't call this new behavior, simp

Re: [PATCH 2/2] futex: lockless wakeups

2015-04-19 Thread Ingo Molnar
* Davidlohr Bueso wrote: > Given the overall futex architecture, any chance of reducing > hb->lock contention is welcome. In this particular case, using > wake-queues to enable lockless wakeups addresses very much real > world performance concerns, even cases of soft-lockups in cases > of large

[PATCH 2/2] futex: lockless wakeups

2015-04-19 Thread Davidlohr Bueso
Given the overall futex architecture, any chance of reducing hb->lock contention is welcome. In this particular case, using wake-queues to enable lockless wakeups addresses very much real world performance concerns, even cases of soft-lockups in cases of large amounts of blocked tasks (which is not