[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v4 00/14] nbd: efficient write zeroes
From: |
Eric Blake |
Subject: |
[Qemu-devel] [PATCH v4 00/14] nbd: efficient write zeroes |
Date: |
Sat, 25 Jun 2016 16:15:40 -0600 |
The upstream NBD protocol is proposing an extension for efficient
write zeroes; having a qemu implementation will be one of the reasons
to promote the proposal from experimental to standard:
https://github.com/yoe/nbd/blob/extension-write-zeroes/doc/proto.md
Some of these patches were previously posted as part of a larger v3
series, so this is labeled v4:
https://lists.gnu.org/archive/html/qemu-devel/2016-04/msg03526.html
Prerequisites:
v1 Auto-fragment large transactions at the block layer:
https://lists.gnu.org/archive/html/qemu-devel/2016-06/msg05819.html
v1 byte-based block discard:
https://lists.gnu.org/archive/html/qemu-devel/2016-06/msg06491.html
v1 Switch raw NBD to byte-based
https://lists.gnu.org/archive/html/qemu-devel/2016-06/msg07030.html
Also available as a tag at:
git fetch git://repo.or.cz/qemu/ericb.git nbd-zero-v4
changes since v3:
rebasing on lots of intermediate patches that have been applied,
particularly related to byte-based block driver performance; and
even more protocol compliance
001/15:[down] 'nbd: Fix bad flag detection on server'
002/15:[----] [-C] 'nbd: Add qemu-nbd -D for human-readable description'
003/15:[0002] [FC] 'nbd: Limit nbdflags to 16 bits'
004/15:[0044] [FC] 'nbd: Treat flags vs. command type as separate fields'
005/15:[----] [--] 'nbd: Share common reply-sending code in server'
006/15:[down] 'nbd: Send message along with server NBD_REP_ERR errors'
007/15:[0014] [FC] 'nbd: Share common option-sending code in client'
008/15:[down] 'nbd: Let server know when client gives up negotiation'
009/15:[0002] [FC] 'nbd: Let client skip portions of server reply'
010/15:[0016] [FC] 'nbd: Less allocation during NBD_OPT_LIST'
011/15:[----] [-C] 'nbd: Support shorter handshake'
012/15:[down] 'nbd: Improve server handling of shutdown requests'
013/15:[down] 'tmp enable tracing for qemu-nbd/qemu-io'
014/15:[0003] [FC] 'nbd: Implement NBD_CMD_WRITE_ZEROES on server'
015/15:[0057] [FC] 'nbd: Implement NBD_CMD_WRITE_ZEROES on client'
Eric Blake (14):
nbd: Fix bad flag detection on server
nbd: Add qemu-nbd -D for human-readable description
nbd: Limit nbdflags to 16 bits
nbd: Treat flags vs. command type as separate fields
nbd: Share common reply-sending code in server
nbd: Send message along with server NBD_REP_ERR errors
nbd: Share common option-sending code in client
nbd: Let server know when client gives up negotiation
nbd: Let client skip portions of server reply
nbd: Less allocation during NBD_OPT_LIST
nbd: Support shorter handshake
nbd: Improve server handling of shutdown requests
nbd: Implement NBD_CMD_WRITE_ZEROES on server
nbd: Implement NBD_CMD_WRITE_ZEROES on client
block/nbd-client.h | 4 +-
include/block/nbd.h | 69 ++++++--
nbd/nbd-internal.h | 12 +-
block/nbd-client.c | 44 ++++-
block/nbd.c | 4 +
nbd/client.c | 500 ++++++++++++++++++++++++++++------------------------
nbd/server.c | 267 +++++++++++++++++++---------
qemu-nbd.c | 16 +-
qemu-nbd.texi | 5 +-
9 files changed, 574 insertions(+), 347 deletions(-)
--
2.5.5
- [Qemu-devel] [PATCH v4 00/14] nbd: efficient write zeroes,
Eric Blake <=
- [Qemu-devel] [PATCH v4 01/14] nbd: Fix bad flag detection on server, Eric Blake, 2016/06/25
- [Qemu-devel] [PATCH v4 09/14] nbd: Let client skip portions of server reply, Eric Blake, 2016/06/25
- [Qemu-devel] [PATCH v4 06/14] nbd: Send message along with server NBD_REP_ERR errors, Eric Blake, 2016/06/25
- [Qemu-devel] [PATCH v4 11/14] nbd: Support shorter handshake, Eric Blake, 2016/06/25
- [Qemu-devel] [PATCH v4 04/14] nbd: Treat flags vs. command type as separate fields, Eric Blake, 2016/06/25
- [Qemu-devel] [PATCH v4 14/14] nbd: Implement NBD_CMD_WRITE_ZEROES on client, Eric Blake, 2016/06/25
- [Qemu-devel] [PATCH v4 07/14] nbd: Share common option-sending code in client, Eric Blake, 2016/06/25