]> git.baikalelectronics.ru Git - kernel.git/commit
Merge branch 'pipe-exclusive-wakeup'
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 8 Feb 2020 19:44:02 +0000 (11:44 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 8 Feb 2020 19:44:02 +0000 (11:44 -0800)
commit537dfbb6df3c618935bf466886c04d73fe39143f
tree130c5cae418ba529f44b27fbfd26e3a18c673996
parent21259871650954dc3cdc939ae7ce5f837fa0437f
parent5550506a0b46f65a6e51b23decbbecd870c91d6b
Merge branch 'pipe-exclusive-wakeup'

Merge thundering herd avoidance on pipe IO.

This would have been applied for 5.5 already, but got delayed because of
a user-space race condition in the GNU make jobserver code.  Now that
there's a new GNU make 4.3 release, and most distributions seem to have
at least applied the (almost three year old) fix for the problem, let's
see if people notice.

And it might have been just bad random timing luck on my machine.

If you do hit the race condition, things will still work, but the
symptom is that you don't get nearly the expected parallelism when using
"make -j<N>".

The jobserver bug can definitely happen without this patch too, but
seems to be easier to trigger when we no longer wake up pipe waiters
unnecessarily.

* pipe-exclusive-wakeup:
  pipe: use exclusive waits when reading or writing