[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnecti
From: |
Richard W.M. Jones |
Subject: |
[PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection |
Date: |
Mon, 13 Sep 2021 16:19:36 +0100 |
$ rm -f /tmp/sock /tmp/pid
$ qemu-img create -f qcow2 /tmp/disk.qcow2 1M
$ qemu-nbd -t --format=qcow2 --socket=/tmp/sock --pid-file=/tmp/pid
/tmp/disk.qcow2 &
$ nbdsh -u 'nbd+unix:///?socket=/tmp/sock' -c 'h.get_size()'
qemu-nbd: Disconnect client, due to: Failed to send reply: Unable to write to
socket: Broken pipe
$ killall qemu-nbd
nbdsh is abruptly dropping the NBD connection here which is a valid
way to close the connection. It seems unnecessary to print an error
in this case so this commit suppresses it.
Note that if you call the nbdsh h.shutdown() method then the message
was not printed:
$ nbdsh -u 'nbd+unix:///?socket=/tmp/sock' -c 'h.get_size()' -c 'h.shutdown()'
Signed-off-by: Richard W.M. Jones <rjones@redhat.com>
---
nbd/server.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/nbd/server.c b/nbd/server.c
index 3927f7789d..e0a43802b2 100644
--- a/nbd/server.c
+++ b/nbd/server.c
@@ -2669,7 +2669,12 @@ static coroutine_fn void nbd_trip(void *opaque)
ret = nbd_handle_request(client, &request, req->data, &local_err);
}
if (ret < 0) {
- error_prepend(&local_err, "Failed to send reply: ");
+ if (errno != EPIPE) {
+ error_prepend(&local_err, "Failed to send reply: ");
+ } else {
+ error_free(local_err);
+ local_err = NULL;
+ }
goto disconnect;
}
--
2.32.0
- [PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection,
Richard W.M. Jones <=
- Re: [PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection, Vladimir Sementsov-Ogievskiy, 2021/09/14
- Re: [PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection, Richard W.M. Jones, 2021/09/14
- Re: [PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection, Vladimir Sementsov-Ogievskiy, 2021/09/14
- Re: [PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection, Richard W.M. Jones, 2021/09/14
- Re: [PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection, Vladimir Sementsov-Ogievskiy, 2021/09/15
- Re: [PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection, Richard W.M. Jones, 2021/09/15
- Re: [PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection, Vladimir Sementsov-Ogievskiy, 2021/09/15
- Re: [PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection, Eric Blake, 2021/09/17
- Re: [PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection, Eric Blake, 2021/09/17
- Re: [PATCH v2] nbd/server: Suppress Broken pipe errors on abrupt disconnection, Eric Blake, 2021/09/14