[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH v2 5/7] block/nbd-client: nbd_co_send_request: retur
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
[Qemu-block] [PATCH v2 5/7] block/nbd-client: nbd_co_send_request: return -EIO if s->quit was set in parallel |
Date: |
Mon, 18 Sep 2017 16:59:33 +0300 |
It's incorrect to return success rc >= 0 if we skip qio_channel_writev_all()
call due to s->quit.
Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
---
block/nbd-client.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/block/nbd-client.c b/block/nbd-client.c
index f331f08a9a..280147e6a7 100644
--- a/block/nbd-client.c
+++ b/block/nbd-client.c
@@ -189,6 +189,9 @@ static int nbd_co_send_request(BlockDriverState *bs,
}
err:
+ if (rc >= 0 && s->quit) {
+ rc = -EIO;
+ }
if (rc < 0) {
s->quit = true;
s->requests[i].coroutine = NULL;
--
2.11.1