v2: - Add a tests/functional test case [Kevin] This patch series fixes a bug in BlockRAMRegistrar: it currently doesn't react to block graph changes and newly inserted nodes lack RAMBlock information needed to map I/O buffers. This is important for vdpa-blk devices because they rely on the ability to map I/O buffers.
Stefan Hajnoczi (5): block: add BdrvChildClass->propagate_attach/detach() callbacks block: add blk_add_attach/detach_notifier() APIs block: rename RAMBlockRegistrar->notifier field block: update inserted/removed nodes from BlockRAMRegistrar tests/functional: add vdpa-blk blockdev-mirror test include/block/block_int-common.h | 11 ++ include/system/block-backend-global-state.h | 9 + include/system/block-ram-registrar.h | 4 +- block.c | 56 ++++-- block/block-backend.c | 44 +++++ block/block-ram-registrar.c | 73 +++++++- tests/unit/test-block-backend.c | 164 ++++++++++++++++++ tests/functional/x86_64/meson.build | 1 + .../functional/x86_64/test_vdpa_blk_mirror.py | 118 +++++++++++++ 9 files changed, 461 insertions(+), 19 deletions(-) create mode 100755 tests/functional/x86_64/test_vdpa_blk_mirror.py -- 2.51.0
