12.03.2018 18:21, Vladimir Sementsov-Ogievskiy wrote:
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.
Forget to mention the main thing:
It is based on:
[PATCH 0/5] nbd server fixing and refactoring before BLOCK_STATUS
nbd/server: move nbd_co_send_structured_error up
nbd/server: fix sparse read
nbd/server: fix: check client->closing before reply sending
nbd/server: refactor nbd_trip: cmd_read and generic reply
nbd/server: refactor nbd_trip: split out nbd_handle_request
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
--
Best regards,
Vladimir