[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH v2 6/7] block/nbd-client: early fail nbd_read_reply_
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
[Qemu-block] [PATCH v2 6/7] block/nbd-client: early fail nbd_read_reply_entry if s->quit is set |
Date: |
Mon, 18 Sep 2017 16:59:34 +0300 |
Do not continue any operation if s->quit is set in parallel.
Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
---
block/nbd-client.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/block/nbd-client.c b/block/nbd-client.c
index 280147e6a7..f80a4c5564 100644
--- a/block/nbd-client.c
+++ b/block/nbd-client.c
@@ -81,7 +81,7 @@ static coroutine_fn void nbd_read_reply_entry(void *opaque)
if (ret < 0) {
error_report_err(local_err);
}
- if (ret <= 0) {
+ if (ret <= 0 || s->quit) {
break;
}
@@ -105,9 +105,8 @@ static coroutine_fn void nbd_read_reply_entry(void *opaque)
assert(qiov != NULL);
assert(s->requests[i].request->len ==
iov_size(qiov->iov, qiov->niov));
- if (qio_channel_readv_all(s->ioc, qiov->iov, qiov->niov,
- NULL) < 0)
- {
+ ret = qio_channel_readv_all(s->ioc, qiov->iov, qiov->niov, NULL);
+ if (ret < 0 || s->quit) {
s->requests[i].ret = -EIO;
break;
}
--
2.11.1
- Re: [Qemu-block] [PATCH v2 3/7] block/nbd-client: refactor reading reply, (continued)
- Re: [Qemu-block] [PATCH v2 3/7] block/nbd-client: refactor reading reply, Eric Blake, 2017/09/18
- Re: [Qemu-block] [PATCH v2 3/7] block/nbd-client: refactor reading reply, Vladimir Sementsov-Ogievskiy, 2017/09/19
- Re: [Qemu-block] [PATCH v2 3/7] block/nbd-client: refactor reading reply, Paolo Bonzini, 2017/09/19
- Re: [Qemu-block] [PATCH v2 3/7] block/nbd-client: refactor reading reply, Vladimir Sementsov-Ogievskiy, 2017/09/19
- Re: [Qemu-block] [PATCH v2 3/7] block/nbd-client: refactor reading reply, Paolo Bonzini, 2017/09/19
[Qemu-block] [PATCH v2 1/7] block/nbd-client: refactor nbd_co_receive_reply, Vladimir Sementsov-Ogievskiy, 2017/09/18
[Qemu-block] [PATCH v2 2/7] block/nbd-client: exit reply-reading coroutine on incorrect handle, Vladimir Sementsov-Ogievskiy, 2017/09/18
[Qemu-block] [PATCH v2 6/7] block/nbd-client: early fail nbd_read_reply_entry if s->quit is set,
Vladimir Sementsov-Ogievskiy <=
[Qemu-block] [PATCH v2 4/7] block/nbd-client: drop reply field from NBDClientSession, Vladimir Sementsov-Ogievskiy, 2017/09/18