block: Cache mode for children etc.
Status from this message: Applied to block-next.
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v3 Latest21 patches 5 repliesApplied
- v221 patches 28 repliesSuperseded
Changes in v3 from the cover letter
- Patch 3 ('mirror: Error out when a BDS would get two BBs') Fixed typo in a comment [Max]
- Patch 4 ('block: Allow references for backing files') Removed meanwhile redundant assertion [Max] s/backing_hd/backing/ in the commit message [Max]
- Patch 6 ('block: Exclude nested options only for children in append_open_options()') g_strdup() the child name to avoid use after free [Wen Congyang]
- Patch 14 ('blockdev: Set 'format' indicates non-empty drive') Fix qemu commandline in a qtest case [Wen Congyang]
- Patch 20 ('qemu-iotests: Test cache mode option inheritance') s/backing_hd/backing/ in some comments [Max]
Enabled commented out 'grep Cache' filter for saner output [Max]
Patches in v3 Applied
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/21 | qcow2: Add .bdrv_join_options callbackblock/ include/ | +48 | 0 replies | |
| 2/21 | block: Fix reopen with semantically overlapping optionsblock.c | +15 | 0 replies | |
| 3/21 | mirror: Error out when a BDS would get two BBsblock/ | +28 | 0 replies | |
| 4/21 | block: Allow references for backing filesblock.c block/ include/ | +32 | 0 replies | |
| 5/21 | block: Consider all block layer options in append_open_optionsblock.c | +18 | 0 replies | |
| 6/21 | block: Exclude nested options only for children in append_open_options()block.c include/ | +17 | 2 replies | |
| 7/21 | block: Pass driver-specific options to .bdrv_refresh_filename()block.c block/ block/ +3 more | +18 | 0 replies | |
| 8/21 | block: Keep "driver" in bs->optionsblock.c | +40 | 0 replies | |
| 9/21 | block: Allow specifying child options in reopenblock.c | +10 | 0 replies | |
| 10/21 | block: reopen: Document option precedence and refactor accordinglyblock.c | +33 | 0 replies | |
| 11/21 | block: Add infrastructure for option inheritanceblock.c include/ | +33 | 0 replies | |
| 12/21 | block: Split out parse_json_protocol()block.c | +32 | 0 replies | |
| 13/21 | block: Introduce bs->explicit_optionsblock.c include/ include/ | +24 | 0 replies | |
| 14/21 | blockdev: Set 'format' indicates non-empty driveblockdev.c tests/ tests/ | +4 | 1 reply | |
| 15/21 | qemu-iotests: Remove cache mode test without mediumtests/ tests/ tests/ | +14 | 0 replies | |
| 16/21 | block: reopen: Extract QemuOpts for generic block layer optionsblock.c | +24 | 0 replies | |
| 17/21 | block: Move cache options into options QDictblock.c blockdev.c | +111 | 1 reply | |
| 18/21 | blkdebug: Enable reopenblock/ | +7 | 0 replies | |
| 19/21 | qemu-iotests: Try setting cache mode for childrentests/ tests/ | +69 | 0 replies | |
| 20/21 | qemu-iotests: Test cache mode option inheritancetests/ tests/ tests/ | +1128 | 0 replies | |
| 21/21 | qemu-iotests: Test reopen with node-name/driver optionstests/ tests/ tests/ | +113 | 0 replies |
Reviews trailers per patch
All 21 patches have a Reviewed-by or Acked-by.
| Patch | Max Reitz | Alberto Garcia | Eric Blake |
|---|---|---|---|
| 1/21 | R-b | R-b | |
| 2/21 | R-b | R-b | |
| 3/21 | R-b | ||
| 4/21 | R-b | ||
| 5/21 | R-b | R-b | R-b |
| 6/21 | R-b | ||
| 7/21 | R-b | R-b | |
| 8/21 | R-b | ||
| 9/21 | R-b | R-b | |
| 10/21 | R-b | ||
| 11/21 | R-b | ||
| 12/21 | R-b | ||
| 13/21 | R-b | ||
| 14/21 | R-b | ||
| 15/21 | R-b | ||
| 16/21 | R-b | ||
| 17/21 | R-b | ||
| 18/21 | R-b | R-b | |
| 19/21 | R-b | ||
| 20/21 | R-b | ||
| 21/21 | R-b |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 3 reviewers.
Cover letter [Qemu-devel] [PATCH v3 00/21] block: Cache mode for children etc.
This is part three (or four, depending on whether you count the bdrv_swap removal) of what I had sent earlier as "[PATCH 00/34] block: Cache mode for children, reopen overhaul and more". Most of the patches were actually already reviewed in v1.
This part contains the remaining functional changes that the cover letter for v1 advertised, and a bit more:
- You can now use node name references for backing files
- bdrv_reopen() works now properly for inherited options (don't exist before this series; after the series the cache options)
- bdrv_reopen() works now properly with semantically overlapping options
- bdrv_reopen() can change child node options
- And finally you can set cache mode options for backing files and other children now (and the reopen behaviour even makes sense
v3:
- Patch 3 ('mirror: Error out when a BDS would get two BBs') Fixed typo in a comment [Max]
- Patch 4 ('block: Allow references for backing files') Removed meanwhile redundant assertion [Max] s/backing_hd/backing/ in the commit message [Max]
- Patch 6 ('block: Exclude nested options only for children in append_open_options()') g_strdup() the child name to avoid use after free [Wen Congyang]
- Patch 14 ('blockdev: Set 'format' indicates non-empty drive') Fix qemu commandline in a qtest case [Wen Congyang]
- Patch 20 ('qemu-iotests: Test cache mode option inheritance') s/backing_hd/backing/ in some comments [Max]
Enabled commented out 'grep Cache' filter for saner output [Max]
Kevin Wolf (21):
qcow2: Add .bdrv_join_options callback
block: Fix reopen with semantically overlapping options
mirror: Error out when a BDS would get two BBs
block: Allow references for backing files
block: Consider all block layer options in append_open_options
block: Exclude nested options only for children in
append_open_options()
block: Pass driver-specific options to .bdrv_refresh_filename()
block: Keep "driver" in bs->options
block: Allow specifying child options in reopen
block: reopen: Document option precedence and refactor accordingly
block: Add infrastructure for option inheritance
block: Split out parse_json_protocol()
block: Introduce bs->explicit_options
blockdev: Set 'format' indicates non-empty drive
qemu-iotests: Remove cache mode test without medium
block: reopen: Extract QemuOpts for generic block layer options
block: Move cache options into options QDict
blkdebug: Enable reopen
qemu-iotests: Try setting cache mode for children
qemu-iotests: Test cache mode option inheritance
qemu-iotests: Test reopen with node-name/driver options
block.c | 459 +++++++++++++++++++------ block/blkdebug.c | 24 +- block/blkverify.c | 2 +- block/mirror.c | 30 +- block/nbd.c | 10 +- block/qcow2.c | 47 +++ block/quorum.c | 2 +- blockdev.c | 57 +--- include/block/block.h | 4 +- include/block/block_int.h | 8 +- tests/hd-geo-test.c | 4 +- tests/qemu-iotests/051 | 22 +- tests/qemu-iotests/051.out | 74 +++- tests/qemu-iotests/133 | 90 +++++ tests/qemu-iotests/133.out | 22 ++ tests/qemu-iotests/142 | 354 +++++++++++++++++++ tests/qemu-iotests/142.out | 773 ++++++++++++++++++++++++++++++++++++++++++ tests/qemu-iotests/group | 2 + tests/qemu-iotests/iotests.py | 4 +- 19 files changed, 1811 insertions(+), 177 deletions(-) create mode 100755 tests/qemu-iotests/133 create mode 100644 tests/qemu-iotests/133.out create mode 100755 tests/qemu-iotests/142 create mode 100644 tests/qemu-iotests/142.out
Signature · 1 line
1.8.3.1