I still think we should keep dropped iotest by introducing "bottom" interface for stream job. And deprecate old interfaces.
Patch is better than arguing, so I decided to try it myself. Now I'm close to complete v14, so, will send it soon.
02.12.2020 21:30, Andrey Shinkevich wrote:
> The previous version 12 was discussed in the email thread:
> Message-Id: <1603390423-980205-1-git-send-email-andrey.shinkevich@virtuozzo.com>
>
> v13:
> 02: The bdrv_remove_node() was dropped.
> 05: Three patches with fixes were merged into one.
> 06: Minor changes based on Vladimir's suggestions.
> 08: Three patches with fixes were merged into one.
> 09: The search for format_name of backing file was added.
> 10: The flag BLK_PERM_GRAPH_MOD was removed.
>
> Andrey Shinkevich (10):
> copy-on-read: support preadv/pwritev_part functions
> block: add API function to insert a node
> copy-on-read: add filter drop function
> qapi: add filter-node-name to block-stream
> qapi: create BlockdevOptionsCor structure for COR driver
> iotests: add #310 to test bottom node in COR driver
> block: include supported_read_flags into BDS structure
> copy-on-read: skip non-guest reads if no copy needed
> stream: skip filters when writing backing file name to QCOW2 header
> block: apply COR-filter to block-stream jobs
>
> block.c | 25 +++++++
> block/copy-on-read.c | 143 +++++++++++++++++++++++++++++++++++++----
> block/copy-on-read.h | 32 +++++++++
> block/io.c | 12 +++-
> block/monitor/block-hmp-cmds.c | 4 +-
> block/stream.c | 120 +++++++++++++++++++++++-----------
> blockdev.c | 12 ++--
> include/block/block.h | 10 ++-
> include/block/block_int.h | 11 +++-
> qapi/block-core.json | 27 +++++++-
> tests/qemu-iotests/030 | 51 ++-------------
> tests/qemu-iotests/030.out | 4 +-
> tests/qemu-iotests/141.out | 2 +-
> tests/qemu-iotests/245 | 22 +++++--
> tests/qemu-iotests/310 | 114 ++++++++++++++++++++++++++++++++
> tests/qemu-iotests/310.out | 15 +++++
> tests/qemu-iotests/group | 1 +
> 17 files changed, 484 insertions(+), 121 deletions(-)
> create mode 100644 block/copy-on-read.h
> create mode 100755 tests/qemu-iotests/310
> create mode 100644 tests/qemu-iotests/310.out
>
--
Best regards,
Vladimir