From 0858ae1ccf6cb55d771cdd7d3ef0cf9a933a7876 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Mon, 27 Sep 2021 13:35:36 -0500 Subject: [PATCH] t/cmd_ipc: allow extra errors and add diagnostics Apparently, sendmsg can fail in less common ways when network buffers are gigantic. Add some diagnostics for future failures, as well. Reported-by: Konstantin Ryabitsev Link: https://public-inbox.org/meta/20210927124056.kj5okiefvs4ztk27@meerkat.local/ --- t/cmd_ipc.t | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/t/cmd_ipc.t b/t/cmd_ipc.t index c5e715a1..dd90fa2a 100644 --- a/t/cmd_ipc.t +++ b/t/cmd_ipc.t @@ -85,7 +85,9 @@ my $do_test = sub { SKIP: { $nsent += $n; fail "sent 0 bytes" if $n == 0; } - ok($!{EAGAIN}, "hit EAGAIN on send $desc"); + ok($!{EAGAIN} || $!{ETOOMANYREFS}, + "hit EAGAIN || ETOOMANYREFS on send $desc") or + diag "send failed with: $!"; ok($nsent > 0, 'sent some bytes'); socketpair($s1, $s2, AF_UNIX, $type, 0) or BAIL_OUT $!; @@ -105,8 +107,9 @@ my $do_test = sub { SKIP: { diag "sent $nr, retrying with more"; $nr += 2 * 1024 * 1024; } else { - ok($!{EMSGSIZE}, 'got EMSGSIZE'); - # diag "$nr bytes hits EMSGSIZE"; + ok($!{EMSGSIZE} || $!{ENOBUFS}, + 'got EMSGSIZE or ENOBUFS') or + diag "$nr bytes fails with: $!"; last; } } -- 2.44.0