Messages in this thread | | | Date | Wed, 8 Oct 2014 13:04:01 -0400 | Subject | Re: bisected: futex regression >= 3.14 - was - Slowdown due to threads bouncing between HT cores | From | Linus Torvalds <> |
| |
On Wed, Oct 8, 2014 at 11:37 AM, Mike Galbraith <umgwanakikbuti@gmail.com> wrote: > > 11d4616bd07f38d496bd489ed8fad1dc4d928823 is the first bad commit > commit 11d4616bd07f38d496bd489ed8fad1dc4d928823 > Author: Linus Torvalds <torvalds@linux-foundation.org> > Date: Thu Mar 20 22:11:17 2014 -0700 > > futex: revert back to the explicit waiter counting code
While that revert might make things a tiny bit slower (I hated doing it, but the clever approach sadly didn't work on powerpc and depended on x86 locking semantics), I seriously doubt it's really relevant. It's more likely that the *real* problem itself is very timing-dependent, and the subtle synchronization changes here then expose it or hide it, rather than really fixing anything.
So like Thomas, I would suspect a race condition in the futex use, and then the exact futex implementation details are just exposing it incidentally.
Linus
| |