[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [Qemu-devel] [PATCH 5/9] mirror: improve performance of
From: |
Eric Blake |
Subject: |
Re: [Qemu-block] [Qemu-devel] [PATCH 5/9] mirror: improve performance of mirroring of empty disk |
Date: |
Thu, 16 Jun 2016 20:53:12 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 |
On 06/16/2016 04:10 AM, Stefan Hajnoczi wrote:
>
> io_sectors currently only accounts for bytes written, not bytes read.
>
> Therefore, I think we need:
>
> /* Don't charge for efficient zero writes */
> if (drv->bdrv_co_pwrite_zeroes) {
> io_sectors = 0;
> }
That's not sufficient. NBD will have conditional support for write
zeroes, depending on whether the server supports it (that is, once my
patches for NBD_CMD_WRITE_ZEROES get out of a holding pattern on all the
other patches in the queue being flushed...). So NBD will have the
bdrv_co_pwrite_zeroes callback, but that doesn't mean it will always
work - if the server doesn't support it, calling bdrv_co_pwrite_zeroes
will fail with -ENOTSUP and fall back to less-efficient writes that need
to be accounted for.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
[Qemu-block] [PATCH 7/9] mirror: allow to save buffer for QEMUIOVector in MirrorOp, Denis V. Lunev, 2016/06/14
[Qemu-block] [PATCH 8/9] mirror: use synch scheme for drive mirror, Denis V. Lunev, 2016/06/14
[Qemu-block] [PATCH 6/9] block: pass qiov into before_write notifier, Denis V. Lunev, 2016/06/14