On Mon, Feb 08, 2021 at 08:47:03PM +0100, Martin Kletzander wrote: > 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]>
Thanks for reminding me about this one. I have pushed it. As well as the reasons you give above, we are also making attempts to fix the root cause in qemu. Nothing upstream yet, but the general direction looks good. Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com virt-df lists disk usage of guests without needing to install any software inside the virtual machine. Supports Linux and Windows. http://people.redhat.com/~rjones/virt-df/ _______________________________________________ Libguestfs mailing list [email protected] https://www.redhat.com/mailman/listinfo/libguestfs
