[Libguestfs] [libnbd PATCH] tests: Prefer qemu-nbd --cache=writeback
Richard W.M. Jones
rjones at redhat.com
Mon Aug 16 17:48:45 UTC 2021
On Mon, Aug 16, 2021 at 12:38:39PM -0500, Eric Blake wrote:
> QEMU 6.1 and earlier default qemu-img to --cache=writeback, but
> qemu-nbd to --cache=writethrough, which is inherently slower because
> it requires more flushing. Although qemu 6.2 will probably be
> changing the default of qemu-nbd for consistency, in the meantime we
> can be explicit in our choice for slightly faster testing.
>
> Tests that only read from the image are not altered, as the slowdowns
> really only impact writing to qemu-nbd. Documentation examples were
> not updated, because there we can just wait for new-enough qemu-nbd
> with saner defaults.
>
> Based on a qemu-nbd report by Nir Soffer.
> ---
> copy/copy-file-to-qcow2.sh | 2 +-
> fuse/test-qcow2.sh | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/copy/copy-file-to-qcow2.sh b/copy/copy-file-to-qcow2.sh
> index dfd870b..24a0ce9 100755
> --- a/copy/copy-file-to-qcow2.sh
> +++ b/copy/copy-file-to-qcow2.sh
> @@ -54,7 +54,7 @@ qemu-img create -f qcow2 $qcow2 $size
>
> # Run qemu-nbd as a separate process so that we can copy to and from
> # the single process in two separate operations.
> -$QEMU_NBD -f qcow2 -t --socket=$sock --pid-file=$pidfile $qcow2 &
> +$QEMU_NBD -f qcow2 --cache=writeback -t --socket=$sock --pid-file=$pidfile $qcow2 &
> cleanup_fn kill $!
>
> wait_for_pidfile qemu-nbd $pid
> diff --git a/fuse/test-qcow2.sh b/fuse/test-qcow2.sh
> index 0545d1d..3bf365c 100755
> --- a/fuse/test-qcow2.sh
> +++ b/fuse/test-qcow2.sh
> @@ -48,7 +48,7 @@ qemu-img convert -f raw $data -O qcow2 $qcow2
>
> rm -rf $mp
> mkdir -p $mp
> -$VG nbdfuse -r -P $pidfile $mp [ qemu-nbd -f qcow2 $qcow2 ] &
> +$VG nbdfuse -r -P $pidfile $mp [ qemu-nbd -f qcow2 --cache=writeback $qcow2 ] &
>
> # Wait for the pidfile to appear.
> for i in {1..60}; do
ACK
Thanks,
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html
More information about the Libguestfs
mailing list