Blame SOURCES/kvm-block-nbd-client-nbd_co_send_request-fix-return-code.patch

4a2fec
From 3f5ffd9dc9075dff3ab8052d5cfb0cdd2bfd1d7d Mon Sep 17 00:00:00 2001
4a2fec
From: Eric Blake <eblake@redhat.com>
4a2fec
Date: Fri, 6 Oct 2017 19:24:09 +0200
4a2fec
Subject: [PATCH 17/34] block/nbd-client: nbd_co_send_request: fix return code
4a2fec
4a2fec
RH-Author: Eric Blake <eblake@redhat.com>
4a2fec
Message-id: <20171006192409.29915-5-eblake@redhat.com>
4a2fec
Patchwork-id: 76912
4a2fec
O-Subject: [RHEV-7.5 qemu-kvm-rhev PATCH 4/4] block/nbd-client: nbd_co_send_request: fix return code
4a2fec
Bugzilla: 1482478
4a2fec
RH-Acked-by: Max Reitz <mreitz@redhat.com>
4a2fec
RH-Acked-by: Laurent Vivier <lvivier@redhat.com>
4a2fec
RH-Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
4a2fec
4a2fec
From: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
4a2fec
4a2fec
It's incorrect to return success rc >= 0 if we skip qio_channel_writev_all()
4a2fec
call due to s->quit.
4a2fec
4a2fec
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
4a2fec
Reviewed-by: Eric Blake <eblake@redhat.com>
4a2fec
Message-Id: <20170920124507.18841-4-vsementsov@virtuozzo.com>
4a2fec
Signed-off-by: Eric Blake <eblake@redhat.com>
4a2fec
(cherry picked from commit a693437037328a95d815ad5aec37ac2f8e130e58)
4a2fec
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
4a2fec
---
4a2fec
 block/nbd-client.c | 2 ++
4a2fec
 1 file changed, 2 insertions(+)
4a2fec
4a2fec
diff --git a/block/nbd-client.c b/block/nbd-client.c
4a2fec
index ea728ff..ed48fcf 100644
4a2fec
--- a/block/nbd-client.c
4a2fec
+++ b/block/nbd-client.c
4a2fec
@@ -161,6 +161,8 @@ static int nbd_co_send_request(BlockDriverState *bs,
4a2fec
             if (ret != request->len) {
4a2fec
                 rc = -EIO;
4a2fec
             }
4a2fec
+        } else if (rc >= 0) {
4a2fec
+            rc = -EIO;
4a2fec
         }
4a2fec
         qio_channel_set_cork(s->ioc, false);
4a2fec
     } else {
4a2fec
-- 
4a2fec
1.8.3.1
4a2fec