Changes in v2:
* Check for BDRV_CHILD_FILTERED rather than bs->drv->is_filter which
is more generic and for example, also covers the case when the
child of a 'raw' node is resized.
* Expand commit message for main patch, i.e. 3/5.
* Add test for resizing the filtered 'file' node of a 'raw' node.
Resizing a node below a filter would result in the filter still
reporting the old size. Implement a 'resize' callback for the
child_of_bds class, that refreshes filter parents recursively.
Fiona Ebner (5):
include/block/block_int-common: document when resize callback is used
block: make bdrv_co_parent_cb_resize() a proper IO API function
block: implement 'resize' callback for child_of_bds class
iotests: add test for resizing a node below filters
iotests: add test for resizing a 'file' node below a 'raw' node
block.c | 12 +++
block/io.c | 9 +--
include/block/block_int-common.h | 5 +-
include/block/block_int-io.h | 6 ++
tests/qemu-iotests/tests/resize-below-filter | 73 +++++++++++++++++++
.../tests/resize-below-filter.out | 5 ++
tests/qemu-iotests/tests/resize-below-raw | 53 ++++++++++++++
tests/qemu-iotests/tests/resize-below-raw.out | 5 ++
8 files changed, 161 insertions(+), 7 deletions(-)
create mode 100755 tests/qemu-iotests/tests/resize-below-filter
create mode 100644 tests/qemu-iotests/tests/resize-below-filter.out
create mode 100755 tests/qemu-iotests/tests/resize-below-raw
create mode 100644 tests/qemu-iotests/tests/resize-below-raw.out
--
2.47.2