[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 9/9] quorum: Clean up quorum_aio_get()
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PATCH v2 9/9] quorum: Clean up quorum_aio_get() |
Date: |
Tue, 22 Nov 2016 13:24:04 +0100 |
Make sure that all fields of the new QuorumAIOCB are zeroed when the
function returns even without explicitly setting them. This will protect
us when new fields are added, removes some explicit zero assignment and
makes the code a little nicer to read.
Suggested-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
---
block/quorum.c | 23 ++++++++++-------------
1 file changed, 10 insertions(+), 13 deletions(-)
diff --git a/block/quorum.c b/block/quorum.c
index 52fa806..38c5e43 100644
--- a/block/quorum.c
+++ b/block/quorum.c
@@ -166,20 +166,17 @@ static QuorumAIOCB *quorum_aio_get(BlockDriverState *bs,
QuorumAIOCB *acb = g_new(QuorumAIOCB, 1);
int i;
- acb->co = qemu_coroutine_self();
- acb->bs = bs;
- acb->offset = offset;
- acb->bytes = bytes;
- acb->qiov = qiov;
- acb->qcrs = g_new0(QuorumChildRequest, s->num_children);
- acb->count = 0;
- acb->success_count = 0;
- acb->rewrite_count = 0;
- acb->votes.compare = quorum_sha256_compare;
- QLIST_INIT(&acb->votes.vote_list);
- acb->is_read = false;
- acb->vote_ret = 0;
+ *acb = (QuorumAIOCB) {
+ .co = qemu_coroutine_self(),
+ .bs = bs,
+ .offset = offset,
+ .bytes = bytes,
+ .qiov = qiov,
+ .votes.compare = quorum_sha256_compare,
+ .votes.vote_list = QLIST_HEAD_INITIALIZER(acb.votes.vote_list),
+ };
+ acb->qcrs = g_new0(QuorumChildRequest, s->num_children);
for (i = 0; i < s->num_children; i++) {
acb->qcrs[i].buf = NULL;
acb->qcrs[i].ret = 0;
--
1.8.3.1
- [Qemu-devel] [PATCH v2 2/9] quorum: Remove s from quorum_aio_get() arguments, (continued)
- [Qemu-devel] [PATCH v2 2/9] quorum: Remove s from quorum_aio_get() arguments, Kevin Wolf, 2016/11/22
- [Qemu-devel] [PATCH v2 4/9] quorum: Do cleanup in caller coroutine, Kevin Wolf, 2016/11/22
- [Qemu-devel] [PATCH v2 3/9] quorum: Implement .bdrv_co_readv/writev, Kevin Wolf, 2016/11/22
- [Qemu-devel] [PATCH v2 6/9] quorum: Avoid bdrv_aio_writev() for rewrites, Kevin Wolf, 2016/11/22
- [Qemu-devel] [PATCH v2 5/9] quorum: Inline quorum_aio_cb(), Kevin Wolf, 2016/11/22
- [Qemu-devel] [PATCH v2 8/9] quorum: Inline quorum_fifo_aio_cb(), Kevin Wolf, 2016/11/22
- [Qemu-devel] [PATCH v2 9/9] quorum: Clean up quorum_aio_get(),
Kevin Wolf <=
- [Qemu-devel] [PATCH v2 7/9] quorum: Implement .bdrv_co_preadv/pwritev(), Kevin Wolf, 2016/11/22