[Qemu-devel] [PATCH v6 0/3] block/stream: get rid of the base

Vladimir Sementsov-Ogievskiy posted 3 patches 4 years, 11 months ago
Test asan passed
Test docker-mingw@fedora passed
Test docker-clang@ubuntu passed
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190506153429.52737-1-vsementsov@virtuozzo.com
Maintainers: Max Reitz <mreitz@redhat.com>, Xie Changlong <xiechanglong.d@gmail.com>, Stefan Hajnoczi <stefanha@redhat.com>, Fam Zheng <fam@euphon.net>, Wen Congyang <wencongyang2@huawei.com>, John Snow <jsnow@redhat.com>, Kevin Wolf <kwolf@redhat.com>
There is a newer version of this series
include/block/block.h  |  3 +-
block/commit.c         |  2 +-
block/io.c             | 20 ++++++++++----
block/mirror.c         |  2 +-
block/replication.c    |  2 +-
block/stream.c         | 62 ++++++++++++++++++++----------------------
tests/qemu-iotests/245 |  4 +--
7 files changed, 50 insertions(+), 45 deletions(-)
[Qemu-devel] [PATCH v6 0/3] block/stream: get rid of the base
Posted by Vladimir Sementsov-Ogievskiy 4 years, 11 months ago
This series introduces a bottom intermediate node that eliminates the
dependency on the base that may change while stream job is running.
It happens when stream/commit parallel jobs are running on the same
backing chain. The base node of the stream job may be a top node of
the parallel commit job and can change before the stream job is
completed. We avoid that dependency by introducing the bottom node.

v6: [resend by Vladimir]
  01: improve comment in block/io.c, suggested by Alberto

v5: [resend by Vladimir]
  01: use comment wording in block/io.c suggested by Alberto
  Now the whole series are reviewed-by Alberto and me.

v4:
trace_stream_start reverted to the base.
bdrv_is_allocated_above_inclusive() deleted and the new parameter
'bool include_base' was added to the bdrv_is_allocated_above().

Andrey Shinkevich (2):
  block: include base when checking image chain for block allocation
  block/stream: introduce a bottom node

Vladimir Sementsov-Ogievskiy (1):
  block/stream: refactor stream_run: drop goto

 include/block/block.h  |  3 +-
 block/commit.c         |  2 +-
 block/io.c             | 20 ++++++++++----
 block/mirror.c         |  2 +-
 block/replication.c    |  2 +-
 block/stream.c         | 62 ++++++++++++++++++++----------------------
 tests/qemu-iotests/245 |  4 +--
 7 files changed, 50 insertions(+), 45 deletions(-)

-- 
2.18.0


Re: [Qemu-devel] [PATCH v6 0/3] block/stream: get rid of the base
Posted by Vladimir Sementsov-Ogievskiy 4 years, 11 months ago
ping

06.05.2019 18:34, Vladimir Sementsov-Ogievskiy wrote:
> This series introduces a bottom intermediate node that eliminates the
> dependency on the base that may change while stream job is running.
> It happens when stream/commit parallel jobs are running on the same
> backing chain. The base node of the stream job may be a top node of
> the parallel commit job and can change before the stream job is
> completed. We avoid that dependency by introducing the bottom node.
> 
> v6: [resend by Vladimir]
>    01: improve comment in block/io.c, suggested by Alberto
> 
> v5: [resend by Vladimir]
>    01: use comment wording in block/io.c suggested by Alberto
>    Now the whole series are reviewed-by Alberto and me.
> 
> v4:
> trace_stream_start reverted to the base.
> bdrv_is_allocated_above_inclusive() deleted and the new parameter
> 'bool include_base' was added to the bdrv_is_allocated_above().
> 
> Andrey Shinkevich (2):
>    block: include base when checking image chain for block allocation
>    block/stream: introduce a bottom node
> 
> Vladimir Sementsov-Ogievskiy (1):
>    block/stream: refactor stream_run: drop goto
> 
>   include/block/block.h  |  3 +-
>   block/commit.c         |  2 +-
>   block/io.c             | 20 ++++++++++----
>   block/mirror.c         |  2 +-
>   block/replication.c    |  2 +-
>   block/stream.c         | 62 ++++++++++++++++++++----------------------
>   tests/qemu-iotests/245 |  4 +--
>   7 files changed, 50 insertions(+), 45 deletions(-)
> 


-- 
Best regards,
Vladimir