[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v4 00/11] nbd: tighter protocol compliance
From: |
Eric Blake |
Subject: |
[Qemu-devel] [PATCH v4 00/11] nbd: tighter protocol compliance |
Date: |
Wed, 11 May 2016 16:39:33 -0600 |
Fix several corner-case bugs in our implementation of the NBD
protocol, both as client and as server.
Depends on Kevin's block-next branch:
git://repo.or.cz/qemu/kevin.git block-next
Also available as a tag at this location:
git fetch git://repo.or.cz/qemu/ericb.git nbd-flags-v4
Broken out of a larger v3 series[1], for easier review. There
are still some places where we aren't quite compliant (for example,
the protocol recommends that the client send NBD_OPT_ABORT before
dropping the connection after receiving a valid server response it
didn't like but which did not violate protocol), but later series
will tackle that.
[1] https://lists.gnu.org/archive/html/qemu-devel/2016-04/msg03526.html
Changes in v4: rebase to latest block-next
001/11:[----] [--] 'nbd: Use BDRV_REQ_FUA for better FUA where supported'
002/11:[0004] [FC] 'nbd: More debug typo fixes, use correct formats'
003/11:[----] [--] 'nbd: Quit server after any write error'
004/11:[----] [--] 'nbd: Improve server handling of bogus commands'
005/11:[----] [--] 'nbd: Reject unknown request flags'
006/11:[----] [--] 'nbd: Group all Linux-specific ioctl code in one place'
007/11:[----] [--] 'nbd: Clean up ioctl handling of qemu-nbd -c'
008/11:[----] [-C] 'nbd: Limit nbdflags to 16 bits'
009/11:[----] [--] 'nbd: Add qemu-nbd -D for human-readable description'
010/11:[----] [--] 'nbd: Detect servers that send unexpected error values'
011/11:[----] [--] 'nbd: Avoid magic number for NBD max name size'
Eric Blake (11):
nbd: Use BDRV_REQ_FUA for better FUA where supported
nbd: More debug typo fixes, use correct formats
nbd: Quit server after any write error
nbd: Improve server handling of bogus commands
nbd: Reject unknown request flags
nbd: Group all Linux-specific ioctl code in one place
nbd: Clean up ioctl handling of qemu-nbd -c
nbd: Limit nbdflags to 16 bits
nbd: Add qemu-nbd -D for human-readable description
nbd: Detect servers that send unexpected error values
nbd: Avoid magic number for NBD max name size
block/nbd-client.h | 2 +-
include/block/nbd.h | 13 ++-
nbd/nbd-internal.h | 5 +-
nbd/client.c | 106 ++++++++++++++++---------
nbd/server.c | 224 +++++++++++++++++++++++++++++++---------------------
qemu-nbd.c | 16 +++-
qemu-nbd.texi | 5 +-
7 files changed, 233 insertions(+), 138 deletions(-)
--
2.5.5
- [Qemu-devel] [PATCH v4 00/11] nbd: tighter protocol compliance,
Eric Blake <=
- [Qemu-devel] [PATCH v4 01/11] nbd: Use BDRV_REQ_FUA for better FUA where supported, Eric Blake, 2016/05/11
- [Qemu-devel] [PATCH v4 10/11] nbd: Detect servers that send unexpected error values, Eric Blake, 2016/05/11
- [Qemu-devel] [PATCH v4 11/11] nbd: Avoid magic number for NBD max name size, Eric Blake, 2016/05/11
- [Qemu-devel] [PATCH v4 07/11] nbd: Clean up ioctl handling of qemu-nbd -c, Eric Blake, 2016/05/11
- [Qemu-devel] [PATCH v4 06/11] nbd: Group all Linux-specific ioctl code in one place, Eric Blake, 2016/05/11
- [Qemu-devel] [PATCH v4 02/11] nbd: More debug typo fixes, use correct formats, Eric Blake, 2016/05/11
- [Qemu-devel] [PATCH v4 05/11] nbd: Reject unknown request flags, Eric Blake, 2016/05/11
- [Qemu-devel] [PATCH v4 08/11] nbd: Limit nbdflags to 16 bits, Eric Blake, 2016/05/11
- [Qemu-devel] [PATCH v4 09/11] nbd: Add qemu-nbd -D for human-readable description, Eric Blake, 2016/05/11