[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 00/12] nbd improvements
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH 00/12] nbd improvements |
Date: |
Fri, 09 Sep 2011 11:00:05 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:6.0) Gecko/20110816 Thunderbird/6.0 |
Am 08.09.2011 17:24, schrieb Paolo Bonzini:
> I find nbd quite useful to test migration, but it is limited:
> it can only do synchronous operation, it is not safe because it
> does not support flush, and it has no discard either. qemu-nbd
> is also limited to 1MB requests, and the nbd block driver does
> not take this into account.
>
> Luckily, flush/FUA support is being worked out by upstream,
> and discard can also be added with the same framework (patches
> 1 to 6).
>
> Asynchronous support is also very similar to what sheepdog is
> already doing (patches 7 to 12).
>
> Paolo Bonzini (12):
> nbd: support feature negotiation
> nbd: sync API definitions with upstream
> nbd: support NBD_SET_FLAGS ioctl
> nbd: add support for NBD_CMD_FLUSH
> nbd: add support for NBD_CMD_FLAG_FUA
> nbd: support NBD_CMD_TRIM in the server
> sheepdog: add coroutine_fn markers
> add socket_set_block
> sheepdog: move coroutine send/recv function to generic code
> block: add bdrv_co_flush support
> nbd: switch to asynchronous operation
> nbd: split requests
>
> block.c | 53 ++++++++++---
> block/nbd.c | 225 ++++++++++++++++++++++++++++++++++++++++++++--------
> block/sheepdog.c | 235
> +++++++-----------------------------------------------
> block_int.h | 1 +
> cutils.c | 108 +++++++++++++++++++++++++
> nbd.c | 80 +++++++++++++++++--
> nbd.h | 20 ++++-
> oslib-posix.c | 7 ++
> oslib-win32.c | 6 ++
> qemu-common.h | 3 +
> qemu-coroutine.c | 71 ++++++++++++++++
> qemu-coroutine.h | 26 ++++++
> qemu-nbd.c | 13 ++--
> qemu_socket.h | 1 +
> 14 files changed, 580 insertions(+), 269 deletions(-)
There is anonther patch enabling AIO for NBD on the list [1], by
Nicholas Thomas (CCed), that lacked review so far. Can you guys please
review each others approach and then converge on a solution? I guess
Paolo's patches 1-7 can be applied in any case, probably causing minor
conflicts, but for the rest we need to decide which one to pick.
Kevin
[1] http://www.mail-archive.com/address@hidden/msg74711.html
- Re: [Qemu-devel] [PATCH v2 09/12] sheepdog: move coroutine send/recv function to generic code, (continued)
[Qemu-devel] [PATCH 10/12] block: add bdrv_co_flush support, Paolo Bonzini, 2011/09/08
[Qemu-devel] [PATCH 04/12] nbd: add support for NBD_CMD_FLUSH, Paolo Bonzini, 2011/09/08
[Qemu-devel] [PATCH 07/12] sheepdog: add coroutine_fn markers, Paolo Bonzini, 2011/09/08
[Qemu-devel] [PATCH 05/12] nbd: add support for NBD_CMD_FLAG_FUA, Paolo Bonzini, 2011/09/08
Re: [Qemu-devel] [PATCH 00/12] nbd improvements,
Kevin Wolf <=
- Re: [Qemu-devel] [PATCH 00/12] nbd improvements, Paolo Bonzini, 2011/09/09
- Re: [Qemu-devel] [PATCH 00/12] nbd improvements, Kevin Wolf, 2011/09/09
- Re: [Qemu-devel] [PATCH 00/12] nbd improvements, Nicholas Thomas, 2011/09/09
- Re: [Qemu-devel] [PATCH 00/12] nbd improvements, Paolo Bonzini, 2011/09/09
- Re: [Qemu-devel] [PATCH 00/12] nbd improvements, Kevin Wolf, 2011/09/09
- Re: [Qemu-devel] [PATCH 00/12] nbd improvements, Nicholas Thomas, 2011/09/09
Re: [Qemu-devel] [PATCH 00/12] nbd improvements, Kevin Wolf, 2011/09/14