From: Paolo Bonzini <pbonz...@redhat.com> nfs_set_events only needs to be called once before entering the while loop; afterwards, nfs_process_read and nfs_process_write take care of it.
Reviewed-by: Stefan Hajnoczi <stefa...@redhat.com> Reviewed-by: Fam Zheng <f...@redhat.com> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> Message-Id: <1477565348-5458-9-git-send-email-pbonz...@redhat.com> Signed-off-by: Fam Zheng <f...@redhat.com> --- block/nfs.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/block/nfs.c b/block/nfs.c index c3db2ec..c8df8d8 100644 --- a/block/nfs.c +++ b/block/nfs.c @@ -149,8 +149,8 @@ static int coroutine_fn nfs_co_readv(BlockDriverState *bs, return -ENOMEM; } + nfs_set_events(client); while (!task.complete) { - nfs_set_events(client); qemu_coroutine_yield(); } @@ -191,8 +191,8 @@ static int coroutine_fn nfs_co_writev(BlockDriverState *bs, return -ENOMEM; } + nfs_set_events(client); while (!task.complete) { - nfs_set_events(client); qemu_coroutine_yield(); } @@ -217,8 +217,8 @@ static int coroutine_fn nfs_co_flush(BlockDriverState *bs) return -ENOMEM; } + nfs_set_events(client); while (!task.complete) { - nfs_set_events(client); qemu_coroutine_yield(); } @@ -513,8 +513,8 @@ static int64_t nfs_get_allocated_file_size(BlockDriverState *bs) return -ENOMEM; } + nfs_set_events(client); while (!task.complete) { - nfs_set_events(client); aio_poll(client->aio_context, true); } -- 2.7.4