[PATCH v4 0/5] block-copy: use aio-task-pool

Vladimir Sementsov-Ogievskiy posted 5 patches 4 years ago
Test docker-mingw@fedora passed
Test checkpatch passed
Test asan passed
Test docker-quick@centos7 passed
Test FreeBSD passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20200429130847.28124-1-vsementsov@virtuozzo.com
Maintainers: Max Reitz <mreitz@redhat.com>, Kevin Wolf <kwolf@redhat.com>
block/block-copy.c | 279 +++++++++++++++++++++++++++++++--------------
1 file changed, 194 insertions(+), 85 deletions(-)
[PATCH v4 0/5] block-copy: use aio-task-pool
Posted by Vladimir Sementsov-Ogievskiy 4 years ago
Hi all!

v4
01: add Max's r-b
04: move variable definition to the top of the block, add Max's r-b
05: - change error-codes in block_copy_task_run(), document them
      and be more accurate about error code in block_copy_dirty_clusters().
    - s/g_free(aio)/aio_task_pool_free(aio)/

==

This is the next step of improving block-copy: use aio task pool.

Async copying loop has better performance than linear, which is shown
in original series (was
"[RFC 00/24] backup performance: block_status + async".

Vladimir Sementsov-Ogievskiy (5):
  block/block-copy: rename in-flight requests to tasks
  block/block-copy: alloc task on each iteration
  block/block-copy: add state pointer to BlockCopyTask
  block/block-copy: refactor task creation
  block/block-copy: use aio-task-pool API

 block/block-copy.c | 279 +++++++++++++++++++++++++++++++--------------
 1 file changed, 194 insertions(+), 85 deletions(-)

-- 
2.21.0


Re: [PATCH v4 0/5] block-copy: use aio-task-pool
Posted by Max Reitz 4 years ago
On 29.04.20 15:08, Vladimir Sementsov-Ogievskiy wrote:
> Hi all!
> 
> v4
> 01: add Max's r-b
> 04: move variable definition to the top of the block, add Max's r-b
> 05: - change error-codes in block_copy_task_run(), document them
>       and be more accurate about error code in block_copy_dirty_clusters().
>     - s/g_free(aio)/aio_task_pool_free(aio)/

Thanks, applied to my block branch:

https://git.xanclic.moe/XanClic/qemu/commits/branch/block

Max



Re: [PATCH v4 0/5] block-copy: use aio-task-pool
Posted by Vladimir Sementsov-Ogievskiy 4 years ago
05.05.2020 14:06, Max Reitz wrote:
> On 29.04.20 15:08, Vladimir Sementsov-Ogievskiy wrote:
>> Hi all!
>>
>> v4
>> 01: add Max's r-b
>> 04: move variable definition to the top of the block, add Max's r-b
>> 05: - change error-codes in block_copy_task_run(), document them
>>        and be more accurate about error code in block_copy_dirty_clusters().
>>      - s/g_free(aio)/aio_task_pool_free(aio)/
> 
> Thanks, applied to my block branch:
> 
> https://git.xanclic.moe/XanClic/qemu/commits/branch/block
> 

Thank you!


-- 
Best regards,
Vladimir