On Thu, Feb 04, 2021 at 06:10:50PM +0000, Richard W.M. Jones wrote:
The new error message is:nbd_connect_unix: connect: server backlog overflowed, see https://bugzilla.redhat.com/1925045: Resource temporarily unavailable Fixes: https://bugzilla.redhat.com/1925045 --- generator/states-connect.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/generator/states-connect.c b/generator/states-connect.c index 03b34c7..98c26e5 100644 --- a/generator/states-connect.c +++ b/generator/states-connect.c @@ -70,6 +70,22 @@ STATE_MACHINE { if (r == 0 || (r == -1 && errno == EINPROGRESS)) return 0; assert (r == -1); +#ifdef __linux__ + if (errno == EAGAIN && family == AF_UNIX) { + /* This can happen on Linux when connecting to a Unix domain + * socket, if the server's backlog is full. Unfortunately there + * is nothing good we can do on the client side when this happens + * since any solution would involve sleeping or busy-waiting. The
Also thanks to the passthrough of the errno any retry procedure can be done in the client that uses libnbd. So for both patches: Reviewed-by: Martin Kletzander <[email protected]>
+ * only solution is on the server side, increasing the backlog. + * But at least improve the error message. + * https://bugzilla.redhat.com/1925045 + */ + SET_NEXT_STATE (%.DEAD); + set_error (errno, "connect: server backlog overflowed, " + "see https://bugzilla.redhat.com/1925045"); + return 0; + } +#endif SET_NEXT_STATE (%.DEAD); set_error (errno, "connect"); return 0; -- 2.29.0.rc2 _______________________________________________ Libguestfs mailing list [email protected] https://www.redhat.com/mailman/listinfo/libguestfs
signature.asc
Description: PGP signature
_______________________________________________ Libguestfs mailing list [email protected] https://www.redhat.com/mailman/listinfo/libguestfs
