Re: bisected: futex regression >= 3.14 - was - Slowdown due to threads bouncing between HT cores

From: Linus Torvalds
Date: Wed Oct 08 2014 - 13:04:11 EST


On Wed, Oct 8, 2014 at 11:37 AM, Mike Galbraith
<umgwanakikbuti@xxxxxxxxx> wrote:
>
> 11d4616bd07f38d496bd489ed8fad1dc4d928823 is the first bad commit
> commit 11d4616bd07f38d496bd489ed8fad1dc4d928823
> Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
> 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
--
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/