[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PULL 10/14] quorum: Clean up quorum_aio_get()
From: |
Kevin Wolf |
Subject: |
[Qemu-block] [PULL 10/14] quorum: Clean up quorum_aio_get() |
Date: |
Mon, 9 Jan 2017 14:44:32 +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>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Alberto Garcia <address@hidden>
---
block/quorum.c | 23 ++++++++++-------------
1 file changed, 10 insertions(+), 13 deletions(-)
diff --git a/block/quorum.c b/block/quorum.c
index e244389..86e2072 100644
--- a/block/quorum.c
+++ b/block/quorum.c
@@ -164,20 +164,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-block] [PULL 00/14] Block layer patches, Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 01/14] qemu-img: fix in-flight count for qemu-img bench, Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 02/14] coroutine: Introduce qemu_coroutine_enter_if_inactive(), Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 05/14] quorum: Do cleanup in caller coroutine, Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 03/14] quorum: Remove s from quorum_aio_get() arguments, Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 04/14] quorum: Implement .bdrv_co_readv/writev, Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 06/14] quorum: Inline quorum_aio_cb(), Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 07/14] quorum: Avoid bdrv_aio_writev() for rewrites, Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 08/14] quorum: Implement .bdrv_co_preadv/pwritev(), Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 09/14] quorum: Inline quorum_fifo_aio_cb(), Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 10/14] quorum: Clean up quorum_aio_get(),
Kevin Wolf <=
- [Qemu-block] [PULL 11/14] blkdebug: Implement bdrv_co_preadv/pwritev/flush, Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 12/14] blkverify: Implement bdrv_co_preadv/pwritev/flush, Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 13/14] block: Rename raw_bsd to raw-format.c, Kevin Wolf, 2017/01/09
- [Qemu-block] [PULL 14/14] block: Rename raw-{posix, win32} to file-*.c, Kevin Wolf, 2017/01/09
- Re: [Qemu-block] [Qemu-devel] [PULL 00/14] Block layer patches, Peter Maydell, 2017/01/09