[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH RFC 3/9] blockjob: Implement AioContext drain op
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH RFC 3/9] blockjob: Implement AioContext drain ops |
Date: |
Thu, 30 Nov 2017 16:09:22 +0000 |
User-agent: |
Mutt/1.9.1 (2017-09-22) |
On Wed, Nov 29, 2017 at 10:49:50PM +0800, Fam Zheng wrote:
> Signed-off-by: Fam Zheng <address@hidden>
> ---
> blockjob.c | 47 ++++++++++++++++++++++++++++++-----------------
> 1 file changed, 30 insertions(+), 17 deletions(-)
>
> diff --git a/blockjob.c b/blockjob.c
> index ff9a614531..86d060c89c 100644
> --- a/blockjob.c
> +++ b/blockjob.c
> @@ -148,6 +148,23 @@ static void block_job_attached_aio_context(AioContext
> *new_context,
> void *opaque);
> static void block_job_detach_aio_context(void *opaque);
>
> +static void block_job_drained_begin(void *opaque)
> +{
> + BlockJob *job = opaque;
> + block_job_pause(job);
> +}
This is buggy because block_job_pause() increments a counter. Remember
the .drained_begin() semantics are that it can be called any number of
times (see comment in previous patch)!
signature.asc
Description: PGP signature
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Qemu-devel] [PATCH RFC 3/9] blockjob: Implement AioContext drain ops,
Stefan Hajnoczi <=