[Qemu-devel] [PATCH v2 0/9] block: Add COR filter driver

Max Reitz posted 9 patches 5 years, 12 months ago
Failed in applying to current master (apply log)
block/Makefile.objs        |   2 +-
qapi/block-core.json       |   5 +-
include/block/block.h      |   9 ++-
block/blkdebug.c           |   9 +--
block/blkreplay.c          |   3 +
block/blkverify.c          |   3 +
block/copy-on-read.c       | 173 +++++++++++++++++++++++++++++++++++++++++++++
block/io.c                 |  12 +++-
block/mirror.c             |   2 +
block/quorum.c             |  19 +++--
block/raw-format.c         |   9 +--
block/throttle.c           |   6 +-
tests/qemu-iotests/197     |   1 +
tests/qemu-iotests/215     | 120 +++++++++++++++++++++++++++++++
tests/qemu-iotests/215.out |  26 +++++++
tests/qemu-iotests/216     | 117 ++++++++++++++++++++++++++++++
tests/qemu-iotests/216.out |  28 ++++++++
tests/qemu-iotests/group   |   2 +
18 files changed, 524 insertions(+), 22 deletions(-)
create mode 100644 block/copy-on-read.c
create mode 100755 tests/qemu-iotests/215
create mode 100644 tests/qemu-iotests/215.out
create mode 100755 tests/qemu-iotests/216
create mode 100644 tests/qemu-iotests/216.out
[Qemu-devel] [PATCH v2 0/9] block: Add COR filter driver
Posted by Max Reitz 5 years, 12 months ago
This series adds a copy-on-read block filter driver which works by
simply setting the BDRV_REQ_COPY_ON_READ flag on write requests (and
otherwise just passing everything through).

Cover letter of v1:
http://lists.nongnu.org/archive/html/qemu-block/2018-04/msg00285.html


v2:
- Renamed the driver "copy-on-read" (from just "cor") [Stefan]
- Commit message typo fix in patch 2 [Stefan, Berto]


git-backport-diff against v2:

Key:
[----] : patches are identical
[####] : number of functional differences between upstream/downstream patch
[down] : patch is downstream-only
The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively

001/9:[0020] [FC] 'block: Add COR filter driver'
002/9:[----] [--] 'block: BLK_PERM_WRITE includes ..._UNCHANGED'
003/9:[----] [--] 'block: Add BDRV_REQ_WRITE_UNCHANGED flag'
004/9:[----] [--] 'block: Set BDRV_REQ_WRITE_UNCHANGED for COR writes'
005/9:[----] [--] 'block/quorum: Support BDRV_REQ_WRITE_UNCHANGED'
006/9:[----] [--] 'block: Support BDRV_REQ_WRITE_UNCHANGED in filters'
007/9:[----] [--] 'iotests: Clean up wrap image in 197'
008/9:[0010] [FC] 'iotests: Copy 197 for COR filter driver'
009/9:[0004] [FC] 'iotests: Add test for COR across nodes'


Max Reitz (9):
  block: Add COR filter driver
  block: BLK_PERM_WRITE includes ..._UNCHANGED
  block: Add BDRV_REQ_WRITE_UNCHANGED flag
  block: Set BDRV_REQ_WRITE_UNCHANGED for COR writes
  block/quorum: Support BDRV_REQ_WRITE_UNCHANGED
  block: Support BDRV_REQ_WRITE_UNCHANGED in filters
  iotests: Clean up wrap image in 197
  iotests: Copy 197 for COR filter driver
  iotests: Add test for COR across nodes

 block/Makefile.objs        |   2 +-
 qapi/block-core.json       |   5 +-
 include/block/block.h      |   9 ++-
 block/blkdebug.c           |   9 +--
 block/blkreplay.c          |   3 +
 block/blkverify.c          |   3 +
 block/copy-on-read.c       | 173 +++++++++++++++++++++++++++++++++++++++++++++
 block/io.c                 |  12 +++-
 block/mirror.c             |   2 +
 block/quorum.c             |  19 +++--
 block/raw-format.c         |   9 +--
 block/throttle.c           |   6 +-
 tests/qemu-iotests/197     |   1 +
 tests/qemu-iotests/215     | 120 +++++++++++++++++++++++++++++++
 tests/qemu-iotests/215.out |  26 +++++++
 tests/qemu-iotests/216     | 117 ++++++++++++++++++++++++++++++
 tests/qemu-iotests/216.out |  28 ++++++++
 tests/qemu-iotests/group   |   2 +
 18 files changed, 524 insertions(+), 22 deletions(-)
 create mode 100644 block/copy-on-read.c
 create mode 100755 tests/qemu-iotests/215
 create mode 100644 tests/qemu-iotests/215.out
 create mode 100755 tests/qemu-iotests/216
 create mode 100644 tests/qemu-iotests/216.out

-- 
2.14.3


Re: [Qemu-devel] [PATCH v2 0/9] block: Add COR filter driver
Posted by Kevin Wolf 5 years, 11 months ago
Am 21.04.2018 um 15:29 hat Max Reitz geschrieben:
> This series adds a copy-on-read block filter driver which works by
> simply setting the BDRV_REQ_COPY_ON_READ flag on write requests (and
> otherwise just passing everything through).

Reviewed-by: Kevin Wolf <kwolf@redhat.com>

Re: [Qemu-devel] [PATCH v2 0/9] block: Add COR filter driver
Posted by Max Reitz 5 years, 11 months ago
On 2018-04-21 15:29, Max Reitz wrote:
> This series adds a copy-on-read block filter driver which works by
> simply setting the BDRV_REQ_COPY_ON_READ flag on write requests (and
> otherwise just passing everything through).
> 
> Cover letter of v1:
> http://lists.nongnu.org/archive/html/qemu-block/2018-04/msg00285.html
> 
> 
> v2:
> - Renamed the driver "copy-on-read" (from just "cor") [Stefan]
> - Commit message typo fix in patch 2 [Stefan, Berto]
> 
> 
> git-backport-diff against v2:
> 
> Key:
> [----] : patches are identical
> [####] : number of functional differences between upstream/downstream patch
> [down] : patch is downstream-only
> The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively
> 
> 001/9:[0020] [FC] 'block: Add COR filter driver'
> 002/9:[----] [--] 'block: BLK_PERM_WRITE includes ..._UNCHANGED'
> 003/9:[----] [--] 'block: Add BDRV_REQ_WRITE_UNCHANGED flag'
> 004/9:[----] [--] 'block: Set BDRV_REQ_WRITE_UNCHANGED for COR writes'
> 005/9:[----] [--] 'block/quorum: Support BDRV_REQ_WRITE_UNCHANGED'
> 006/9:[----] [--] 'block: Support BDRV_REQ_WRITE_UNCHANGED in filters'
> 007/9:[----] [--] 'iotests: Clean up wrap image in 197'
> 008/9:[0010] [FC] 'iotests: Copy 197 for COR filter driver'
> 009/9:[0004] [FC] 'iotests: Add test for COR across nodes'

Thanks for the reviews, applied to my block branch.

Max

Re: [Qemu-devel] [PATCH v2 0/9] block: Add COR filter driver
Posted by Eric Blake 5 years, 11 months ago
On 04/25/2018 07:18 AM, Max Reitz wrote:
> On 2018-04-21 15:29, Max Reitz wrote:
>> This series adds a copy-on-read block filter driver which works by
>> simply setting the BDRV_REQ_COPY_ON_READ flag on write requests (and
>> otherwise just passing everything through).
>>

> 
> Thanks for the reviews, applied to my block branch.

Sorry for a late review - I've pointed out a missing documentation
change to supported_write_flags and supported_zero_flags; it can be
fixed either as a followup, or squashed in if you rebase your staging on
block branch before turning out a pull request.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org