[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v5 0/5] qcow2: async handling of fragmented io

From: Max Reitz
Subject: Re: [PATCH v5 0/5] qcow2: async handling of fragmented io
Date: Fri, 20 Sep 2019 13:10:04 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0

On 16.09.19 19:53, Vladimir Sementsov-Ogievskiy wrote:
> Hi all!
> Here is an asynchronous scheme for handling fragmented qcow2
> reads and writes. Both qcow2 read and write functions loops through
> sequential portions of data. The series aim it to parallelize these
> loops iterations.
> It improves performance for fragmented qcow2 images, I've tested it
> as described below.

Thanks again, applied to my block branch:


> v5: fix 026 and rebase on Max's block branch [perf results not updated]:
> 01: new, prepare 026 to not fail
> 03: - drop read_encrypted blkdbg event [Kevin]
>     - assert((x & (BDRV_SECTOR_SIZE - 1)) == 0) -> assert(QEMU_IS_ALIGNED(x, 
> BDRV_SECTOR_SIZE)) [rebase]
>     - full host offset in argument of qcow2_co_decrypt [rebase]
> 04: - substitute remaining qcow2_co_do_pwritev by qcow2_co_pwritev_task in 
> comment [Max]
>     - full host offset in argument of qcow2_co_encrypt [rebase]
> 05: - Now patch don't affect 026 iotest, so its output is not changed
> Rebase changes seems trivial, so, I've kept r-b marks.

(For the record, I didn’t consider them trivial, or I’d’ve applied
Maxim’s series on top of yours.  I consider a conflict to be trivially
resolvable only if there is only one way of doing it; but when I
resolved the conflicts myself, I resolved the one in patch 3 differently
from you – I added an offset_in_cluster variable to
qcow2_co_preadv_encrypted().  Sure, it’s still simple and the difference
is minor, but that was exactly where I thought that I can’t consider
this trivial.)


Attachment: signature.asc
Description: OpenPGP digital signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]