summaryrefslogtreecommitdiffstats
path: root/src/kernel/net-txrx.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/net-txrx.c')
-rw-r--r--src/kernel/net-txrx.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/kernel/net-txrx.c b/src/kernel/net-txrx.c
index 87a9169..27b07ea 100644
--- a/src/kernel/net-txrx.c
+++ b/src/kernel/net-txrx.c
@@ -165,14 +165,20 @@ int dnbd3_send_request(struct dnbd3_sock *sock, struct request *req,
lng = iov_num == 1 ? iov[0].iov_len : iov[0].iov_len + iov[1].iov_len;
if (unlikely(!sock->sock)) {
warn_sock(sock, "socket was shutdown while sending");
+ result = -EIO;
goto error;
}
result = kernel_sendmsg(sock->sock, &msg, iov, iov_num, lng);
if (result != lng) {
error_sock(sock, "connection to server lost");
- if (cmd) {
- dnbd3_requeue_cmd(cmd);
- }
+ /*
+ * this triggers:
+ * kernel BUG at block/blk-mq.c:704!
+ * command will be reqeued by timeout
+ */
+// if (cmd) {
+// dnbd3_requeue_cmd(cmd);
+// }
sock->server->failures++;
goto error;
}