Hi all. Here is minimal realization of base:allocation context of NBD block-status extension, which allows to get block status through NBD.
v2 changes are in each patch after "---" line. Vladimir Sementsov-Ogievskiy (8): nbd/server: add nbd_opt_invalid helper nbd/server: add nbd_read_opt_name helper nbd: BLOCK_STATUS for standard get_block_status function: server part block/nbd-client: save first fatal error in nbd_iter_error nbd: BLOCK_STATUS for standard get_block_status function: client part iotests.py: tiny refactor: move system imports up iotests: add file_path helper iotests: new test 209 for NBD BLOCK_STATUS block/nbd-client.h | 6 + include/block/nbd.h | 5 + block/nbd-client.c | 148 ++++++++++++++- block/nbd.c | 3 + nbd/client.c | 117 ++++++++++++ nbd/server.c | 413 +++++++++++++++++++++++++++++++++++++++--- tests/qemu-iotests/209 | 34 ++++ tests/qemu-iotests/209.out | 2 + tests/qemu-iotests/group | 1 + tests/qemu-iotests/iotests.py | 37 +++- 10 files changed, 737 insertions(+), 29 deletions(-) create mode 100755 tests/qemu-iotests/209 create mode 100644 tests/qemu-iotests/209.out -- 2.11.1