From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,AWL,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 2248E1F9F3 for ; Mon, 13 Sep 2021 20:53:56 +0000 (UTC) From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 3/6] use POSIX::PIPE_BUF (instead of _POSIX_PIPE_BUF) Date: Mon, 13 Sep 2021 20:53:52 +0000 Message-Id: <20210913205355.13002-4-e@80x24.org> In-Reply-To: <20210913205355.13002-1-e@80x24.org> References: <20210913205355.13002-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: PIPE_BUF accounts for Linux being 4096 (and presumably other OSes differing), while _POSIX_PIPE_BUF is the minimum 512 value. --- lib/PublicInbox/Git.pm | 4 +--- t/run.perl | 4 ++-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/lib/PublicInbox/Git.pm b/lib/PublicInbox/Git.pm index 219a1732..5ef1db2f 100644 --- a/lib/PublicInbox/Git.pm +++ b/lib/PublicInbox/Git.pm @@ -27,9 +27,7 @@ our $PIPE_BUFSIZ = 65536; # Linux default our $in_cleanup; our $RDTIMEO = 60_000; # milliseconds -use constant MAX_INFLIGHT => - (($^O eq 'linux' ? 4096 : POSIX::_POSIX_PIPE_BUF()) * 3) - / +use constant MAX_INFLIGHT => (POSIX::PIPE_BUF * 3) / 65; # SHA-256 hex size + "\n" in preparation for git using non-SHA1 my %GIT_ESC = ( diff --git a/t/run.perl b/t/run.perl index 5082125b..b0ee611a 100755 --- a/t/run.perl +++ b/t/run.perl @@ -18,7 +18,7 @@ use PublicInbox::Spawn; use Getopt::Long qw(:config gnu_getopt no_ignore_case auto_abbrev); use Errno qw(EINTR); use Fcntl qw(:seek); -use POSIX qw(_POSIX_PIPE_BUF WNOHANG); +use POSIX qw(WNOHANG); use File::Temp (); my $jobs = 1; my $repeat = 1; @@ -199,7 +199,7 @@ for (my $i = $repeat; $i != 0; $i--) { pipe(my ($rd, $wr)) or DIE "pipe: $!"; # fill the queue before forking so children can start earlier - my $n = (_POSIX_PIPE_BUF / UINT_SIZE); + my $n = (POSIX::PIPE_BUF / UINT_SIZE); if ($n >= $#todo) { print $wr join('', map { pack('I', $_) } (0..$#todo)) or DIE; undef $wr;