[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [Qemu-block] [PATCH v2 0/6] Auto-fragment large transac
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [Qemu-block] [PATCH v2 0/6] Auto-fragment large transactions at the block layer |
Date: |
Thu, 14 Jul 2016 13:18:52 +0100 |
User-agent: |
Mutt/1.6.1 (2016-04-27) |
On Fri, Jul 08, 2016 at 04:35:58PM -0600, Eric Blake wrote:
> We have max_transfer documented in BlockLimits, but while we
> honor it during pwrite_zeroes, we were blindly ignoring it
> during pwritev and preadv, leading to multiple drivers having
> to implement fragmentation themselves. This series moves
> fragmentation to the block layer, then fixes the NBD and iscsi
> driver to use it.
>
> qcow2 still does self-fragmenting, but that's because of cluster
> boundaries where it really has to do additional work beyond what
> the block layer can automatically provide.
>
> Prequisite: Kevin's latest block branch PULL request
>
> Also available as a tag at:
> git fetch git://repo.or.cz/qemu/ericb.git nbd-fragment-v2
>
> Changes since v1:
> - patch 1 - fix valid -O2 compiler complaint [Kevin]
> - patch 2 [old 3] - move earlier [Kevin]
> - patch 1, 3 [old 1, 2] - tweak return value
> - patch 5 - minor formatting tweak [Kevin]
>
> 001/6:[0006] [FC] 'block: Fragment reads to max transfer length'
> 002/6:[----] [--] 'raw_bsd: Don't advertise flags not supported by protocol
> layer'
> 003/6:[0004] [FC] 'block: Fragment writes to max transfer length'
> 004/6:[----] [--] 'nbd: Rely on block layer to break up large requests'
> 005/6:[0004] [FC] 'nbd: Drop unused offset parameter'
> 006/6:[----] [--] 'iscsi: Rely on block layer to break up large requests'
>
> Eric Blake (6):
> block: Fragment reads to max transfer length
> raw_bsd: Don't advertise flags not supported by protocol layer
> block: Fragment writes to max transfer length
> nbd: Rely on block layer to break up large requests
> nbd: Drop unused offset parameter
> iscsi: Rely on block layer to break up large requests
>
> include/block/nbd.h | 1 -
> nbd/nbd-internal.h | 4 +--
> block/io.c | 90
> +++++++++++++++++++++++++++++++++++++++--------------
> block/iscsi.c | 14 +++------
> block/nbd-client.c | 78 +++++++++++++---------------------------------
> block/nbd.c | 12 ++-----
> block/raw_bsd.c | 6 ++--
> nbd/common.c | 5 +--
> 8 files changed, 103 insertions(+), 107 deletions(-)
Reviewed-by: Stefan Hajnoczi <address@hidden>
signature.asc
Description: PGP signature
- [Qemu-devel] [PATCH v2 0/6] Auto-fragment large transactions at the block layer, Eric Blake, 2016/07/08
- [Qemu-devel] [PATCH v2 1/6] block: Fragment reads to max transfer length, Eric Blake, 2016/07/08
- [Qemu-devel] [PATCH v2 3/6] block: Fragment writes to max transfer length, Eric Blake, 2016/07/08
- [Qemu-devel] [PATCH v2 2/6] raw_bsd: Don't advertise flags not supported by protocol layer, Eric Blake, 2016/07/08
- [Qemu-devel] [PATCH v2 4/6] nbd: Rely on block layer to break up large requests, Eric Blake, 2016/07/08
- [Qemu-devel] [PATCH v2 6/6] iscsi: Rely on block layer to break up large requests, Eric Blake, 2016/07/08
- [Qemu-devel] [PATCH v2 5/6] nbd: Drop unused offset parameter, Eric Blake, 2016/07/08
- Re: [Qemu-devel] [Qemu-block] [PATCH v2 0/6] Auto-fragment large transactions at the block layer,
Stefan Hajnoczi <=