The following changes since commit 230ce19814ecc6bff8edac3b5b86e7c82f422c6c:
Merge remote-tracking branch 'remotes/rth/tags/pull-axp-20190325' into staging (2019-03-29 19:29:00 +0000)
are available in the Git repository at:
https://repo.or.cz/qemu/ericb.git tags/pull-nbd-2019-04-01
for you to fetch changes up to 75d34eb98ca0bb2f49d607fcaefd9c482e56b15d:
nbd/client: Trace server noncompliance on structured reads (2019-04-01 08:58:04 -0500)
----------------------------------------------------------------
nbd patches for 2019-04-01
- Better behavior of qemu-img map on NBD images
- Fixes for NBD protocol alignment corner cases:
- the server has fewer places where it sends reads or block status
not aligned to its advertised block size
- the client has more cases where it can work around server
non-compliance present in qemu 3.1
- the client now avoids non-compliant requests when interoperating
with nbdkit or other servers not advertising block size
----------------------------------------------------------------
Eric Blake (14):
qemu-img: Report bdrv_block_status failures
nbd: Tolerate some server non-compliance in NBD_CMD_BLOCK_STATUS
nbd: Don't lose server's error to NBD_CMD_BLOCK_STATUS
nbd: Permit simple error to NBD_CMD_BLOCK_STATUS
qemu-img: Gracefully shutdown when map can't finish
nbd-client: Work around server BLOCK_STATUS misalignment at EOF
iotests: Add 241 to test NBD on unaligned images
nbd/client: Lower min_block for block-status, unaligned size
nbd/client: Report offsets in bdrv_block_status
nbd/client: Reject inaccessible tail of inconsistent server
nbd/client: Support qemu-img convert from unaligned size
block: Add bdrv_get_request_alignment()
nbd/server: Advertise actual minimum block size
nbd/client: Trace server noncompliance on structured reads
include/sysemu/block-backend.h | 1 +
block/block-backend.c | 7 +++
block/nbd-client.c | 124 +++++++++++++++++++++++++++++++++--------
block/nbd.c | 19 ++++++-
nbd/client.c | 8 +++
nbd/server.c | 13 +++--
qemu-img.c | 16 ++++--
block/trace-events | 2 +
tests/qemu-iotests/209.out | 4 +-
tests/qemu-iotests/223.out | 22 ++++----
tests/qemu-iotests/233.out | 2 +-
tests/qemu-iotests/241 | 100 +++++++++++++++++++++++++++++++++
tests/qemu-iotests/241.out | 28 ++++++++++
tests/qemu-iotests/group | 1 +
14 files changed, 299 insertions(+), 48 deletions(-)
create mode 100755 tests/qemu-iotests/241
create mode 100644 tests/qemu-iotests/241.out
--
2.20.1