qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-block] [PATCH 7/7] qcow2: do decompression in threads


From: Paolo Bonzini
Subject: Re: [Qemu-block] [PATCH 7/7] qcow2: do decompression in threads
Date: Wed, 7 Nov 2018 00:40:31 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.0

On 01/11/2018 19:27, Vladimir Sementsov-Ogievskiy wrote:
> -/* See qcow2_compress definition for parameters description */
> -static ssize_t qcow2_co_compress(BlockDriverState *bs,
> -                                 void *dest, size_t dest_size,
> -                                 const void *src, size_t src_size)
> +static ssize_t qcow2_co_do_compress(BlockDriverState *bs,
> +                                    void *dest, size_t dest_size,
> +                                    const void *src, size_t src_size,
> +                                    Qcow2CompressFunc func)
>  {
>      BDRVQcow2State *s = bs->opaque;
>      BlockAIOCB *acb;
> @@ -3838,6 +3842,7 @@ static ssize_t qcow2_co_compress(BlockDriverState *bs,
>          .dest_size = dest_size,
>          .src = src,
>          .src_size = src_size,
> +        .func = func,
>      };
>  
>      while (s->nb_compress_threads >= MAX_COMPRESS_THREADS) {
> @@ -3860,6 +3865,22 @@ static ssize_t qcow2_co_compress(BlockDriverState *bs,
>      return arg.ret;
>  }
>  

Not a blocker for this patch, but I'll note that qcow2_co_do_compress
could use thread_pool_submit_co.  Also, qcow2_co_do_compress should be a
"coroutine_fn".

Paolo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]