[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 00/15] qemu patches for 64-bit NBD extensions
From: |
Eric Blake |
Subject: |
[PATCH v2 00/15] qemu patches for 64-bit NBD extensions |
Date: |
Mon, 14 Nov 2022 16:48:33 -0600 |
This series implements the spec changes in a counterpart NBD series,
and has been tested to be interoperable with libnbd implementing the
same spec. I'm not too happy with the RFC patch at the end, but
implemented it for discussion. Given the release timing, this would
be qemu 8.0 material if we are happy with the direction the spec is
headed in.
Eric Blake (15):
nbd/client: Add safety check on chunk payload length
nbd/server: Prepare for alternate-size headers
nbd: Prepare for 64-bit request effect lengths
nbd: Add types for extended headers
nbd/server: Refactor handling of request payload
nbd/server: Refactor to pass full request around
nbd/server: Initial support for extended headers
nbd/server: Support 64-bit block status
nbd/client: Initial support for extended headers
nbd/client: Accept 64-bit block status chunks
nbd/client: Request extended headers during negotiation
nbd/server: Prepare for per-request filtering of BLOCK_STATUS
nbd/server: Add FLAG_PAYLOAD support to CMD_BLOCK_STATUS
RFC: nbd/client: Accept 64-bit hole chunks
RFC: nbd/server: Send 64-bit hole chunk
docs/interop/nbd.txt | 1 +
include/block/nbd.h | 163 +++--
nbd/nbd-internal.h | 8 +-
block/nbd.c | 102 ++-
nbd/client-connection.c | 1 +
nbd/client.c | 132 +++-
nbd/common.c | 14 +-
nbd/server.c | 636 +++++++++++++-----
qemu-nbd.c | 3 +
block/trace-events | 1 +
nbd/trace-events | 11 +-
tests/qemu-iotests/223.out | 18 +-
tests/qemu-iotests/233.out | 5 +
tests/qemu-iotests/241.out | 3 +
tests/qemu-iotests/307.out | 15 +-
.../tests/nbd-qemu-allocation.out | 3 +-
16 files changed, 797 insertions(+), 319 deletions(-)
--
2.38.1
- [libnbd PATCH v2 03/23] protocol: Add definitions for extended headers, (continued)
- [libnbd PATCH v2 03/23] protocol: Add definitions for extended headers, Eric Blake, 2022/11/14
- [libnbd PATCH v2 02/23] internal: Refactor layout of replies in sbuf, Eric Blake, 2022/11/14
- [libnbd PATCH v2 18/23] generator: Actually request extended headers, Eric Blake, 2022/11/14
- [libnbd PATCH v2 20/23] interop: Add test of 64-bit block status, Eric Blake, 2022/11/14
- [libnbd PATCH v2 07/23] generator: Add struct nbd_extent in prep for 64-bit extents, Eric Blake, 2022/11/14
- [libnbd PATCH v2 10/23] api: Add [aio_]nbd_block_status_64, Eric Blake, 2022/11/14
- [libnbd PATCH v2 11/23] api: Add several functions for controlling extended headers, Eric Blake, 2022/11/14
- [libnbd PATCH v2 09/23] block_status: Accept 64-bit extents during block status, Eric Blake, 2022/11/14
- [libnbd PATCH v2 04/23] states: Prepare to send 64-bit requests, Eric Blake, 2022/11/14
- [libnbd PATCH v2 05/23] states: Prepare to receive 64-bit replies, Eric Blake, 2022/11/14
- [PATCH v2 00/15] qemu patches for 64-bit NBD extensions,
Eric Blake <=
- [PATCH v2 06/15] nbd/server: Refactor to pass full request around, Eric Blake, 2022/11/14
- [PATCH v2 12/15] nbd/server: Prepare for per-request filtering of BLOCK_STATUS, Eric Blake, 2022/11/14
- [PATCH v2 04/15] nbd: Add types for extended headers, Eric Blake, 2022/11/14
- [PATCH v2 15/15] RFC: nbd/server: Send 64-bit hole chunk, Eric Blake, 2022/11/14
- [PATCH v2 13/15] nbd/server: Add FLAG_PAYLOAD support to CMD_BLOCK_STATUS, Eric Blake, 2022/11/14
- [PATCH v2 09/15] nbd/client: Initial support for extended headers, Eric Blake, 2022/11/14
- [PATCH v2 10/15] nbd/client: Accept 64-bit block status chunks, Eric Blake, 2022/11/14
- [PATCH v2 08/15] nbd/server: Support 64-bit block status, Eric Blake, 2022/11/14
- [PATCH v2 07/15] nbd/server: Initial support for extended headers, Eric Blake, 2022/11/14
- [PATCH v2 11/15] nbd/client: Request extended headers during negotiation, Eric Blake, 2022/11/14