shrink pipes under Linux
commit0ed746e9b9f03a5067aa97cc4ed54b9e42443727
authorEric Wong <e@80x24.org>
Mon, 20 Aug 2018 20:56:52 +0000 (20 20:56 +0000)
committerEric Wong <e@80x24.org>
Mon, 20 Aug 2018 21:09:42 +0000 (20 21:09 +0000)
treeea9d4ae65457ce57902208295e22d8d61bad0e88
parentd03dd4e9e4ff29689752b7c82202008fefaf1210
shrink pipes under Linux

We have never had any need for pipes with the default 64K
capacity on Linux.  Our pipes are only used for tiny writes
in signal handlers and to perform parent shutdown detection.

With the current /proc/sys/fs/pipe-user-pages-soft
default, only 1024 pipes can be created by an unprivileged
user before Linux clamps down the pipe size to 4K (a single page)
for newly-created pipes[1].

So avoid penalizing OTHER pipe users who could benefit from the
increased capacity and use only a single page for ourselves.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/fs/pipe.c?h=v4.18#n642
lib/unicorn.rb
lib/unicorn/http_request.rb
lib/unicorn/launcher.rb
test/unit/test_util.rb