[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 00/31] qed: Convert to coroutines
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH v2 00/31] qed: Convert to coroutines |
Date: |
Mon, 19 Jun 2017 16:24:53 +0100 |
User-agent: |
Mutt/1.8.0 (2017-02-23) |
On Fri, Jun 16, 2017 at 07:36:45PM +0200, Kevin Wolf wrote:
> The qed block driver is one of the last remaining block drivers that use the
> AIO callback style interfaces. This series converts it to the coroutine model
> that other drivers are using and removes some AIO functions from the block
> layer API afterwards.
>
> If this isn't compelling enough, the diffstat should speak for itself.
>
> This series is relatively long, but it consists mostly of mechanical
> conversions of one function per patch, so it should be easy to review.
>
> v2:
> - Add coroutine_fn markers [Stefan, Paolo]
> - Use bdrv_co_*() instead of bdrv_*() in coroutine_fns
> - Use ACB on stack in qed_co_request [Paolo]
> - Updated some comments [Paolo]
> - Unplug earlier in qed_clear_need_check() [Stefan]
> - Removed now unused trace events [Stefan]
> - Improved commit message of patch creating qed_aio_write_cow() [Eric]
>
> Kevin Wolf (31):
> qed: Use bottom half to resume waiting requests
> qed: Make qed_read_table() synchronous
> qed: Remove callback from qed_read_table()
> qed: Remove callback from qed_read_l2_table()
> qed: Remove callback from qed_find_cluster()
> qed: Make qed_read_backing_file() synchronous
> qed: Make qed_copy_from_backing_file() synchronous
> qed: Remove callback from qed_copy_from_backing_file()
> qed: Make qed_write_header() synchronous
> qed: Remove callback from qed_write_header()
> qed: Make qed_write_table() synchronous
> qed: Remove GenericCB
> qed: Remove callback from qed_write_table()
> qed: Make qed_aio_read_data() synchronous
> qed: Make qed_aio_write_main() synchronous
> qed: Inline qed_commit_l2_update()
> qed: Add return value to qed_aio_write_l1_update()
> qed: Add return value to qed_aio_write_l2_update()
> qed: Add return value to qed_aio_write_main()
> qed: Add return value to qed_aio_write_cow()
> qed: Add return value to qed_aio_write_inplace/alloc()
> qed: Add return value to qed_aio_read/write_data()
> qed: Remove ret argument from qed_aio_next_io()
> qed: Remove recursion in qed_aio_next_io()
> qed: Implement .bdrv_co_readv/writev
> qed: Use CoQueue for serialising allocations
> qed: Simplify request handling
> qed: Use a coroutine for need_check_timer
> qed: Add coroutine_fn to I/O path functions
> qed: Use bdrv_co_* for coroutine_fns
> block: Remove bdrv_aio_readv/writev/flush()
>
> block/Makefile.objs | 2 +-
> block/io.c | 171 -----------
> block/qed-cluster.c | 124 ++++----
> block/qed-gencb.c | 33 ---
> block/qed-table.c | 261 ++++++-----------
> block/qed.c | 773
> +++++++++++++++++++-------------------------------
> block/qed.h | 54 +---
> block/trace-events | 3 -
> include/block/block.h | 8 -
> 9 files changed, 438 insertions(+), 991 deletions(-)
> delete mode 100644 block/qed-gencb.c
>
> --
> 1.8.3.1
>
Reviewed-by: Stefan Hajnoczi <address@hidden>
signature.asc
Description: PGP signature
- [Qemu-devel] [PATCH v2 23/31] qed: Remove ret argument from qed_aio_next_io(), (continued)
- [Qemu-devel] [PATCH v2 23/31] qed: Remove ret argument from qed_aio_next_io(), Kevin Wolf, 2017/06/16
- [Qemu-devel] [PATCH v2 25/31] qed: Implement .bdrv_co_readv/writev, Kevin Wolf, 2017/06/16
- [Qemu-devel] [PATCH v2 26/31] qed: Use CoQueue for serialising allocations, Kevin Wolf, 2017/06/16
- [Qemu-devel] [PATCH v2 27/31] qed: Simplify request handling, Kevin Wolf, 2017/06/16
- [Qemu-devel] [PATCH v2 28/31] qed: Use a coroutine for need_check_timer, Kevin Wolf, 2017/06/16
- [Qemu-devel] [PATCH v2 30/31] qed: Use bdrv_co_* for coroutine_fns, Kevin Wolf, 2017/06/16
- [Qemu-devel] [PATCH v2 29/31] qed: Add coroutine_fn to I/O path functions, Kevin Wolf, 2017/06/16
- [Qemu-devel] [PATCH v2 31/31] block: Remove bdrv_aio_readv/writev/flush(), Kevin Wolf, 2017/06/16
- Re: [Qemu-devel] [PATCH v2 00/31] qed: Convert to coroutines,
Stefan Hajnoczi <=
- Re: [Qemu-devel] [PATCH v2 00/31] qed: Convert to coroutines, Kevin Wolf, 2017/06/22