[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-stable] [PATCH v2 0/7] curl: locking cleanups/fixes, coroutine
From: |
Richard W.M. Jones |
Subject: |
Re: [Qemu-stable] [PATCH v2 0/7] curl: locking cleanups/fixes, coroutine conversion, remove aio_poll |
Date: |
Wed, 10 May 2017 16:57:00 +0100 |
User-agent: |
Mutt/1.5.20 (2009-12-10) |
On Wed, May 10, 2017 at 04:31:58PM +0200, Paolo Bonzini wrote:
> Since the last patch in v1 didn't work, I bit the bullet and converted
> the whole thing to coroutines (patches 4-6). This in turns allows a more
> elegant solution to wait for CURLStates to get free (patch 7).
>
> I tested this by lowering CURL_NUM_STATES to 2. With this change, the
> buggy case triggers a couple times while booting a Fedora netinst image.
This series fixes the original bug, so:
Tested-by: Richard W.M. Jones <address@hidden>
I think the Reported-by in patch 3 should credit Kun Wei for finding
the bug, and we should probably mention the BZ too:
Reported-by: Kun Wei <address@hidden>
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1447590
A nit pick perhaps but in patch 5 you say "This was broken before for
disks > 2TB, but now it would break at 4GB.".
I understand after reading it a few times that you mean it would be
broken at 4GB, if you hadn't changed size_t -> uint64_t (on 32 bit
platforms). Perhaps better to clarify that sentence.
---
I also ran some performance and stability testing. I used virt-ls for
this. The following command will iterate over every file in a remote
guest image and print an md5sum:
LIBGUESTFS_BACKEND=direct \
LIBGUESTFS_HV=~/d/qemu/x86_64-softmmu/qemu-system-x86_64 \
virt-ls -a http://somehost/rhel-guest-image-7.1-20150224.0.x86_64.qcow2 \
-lR --checksum /
I timed this with and without your patches, but there was no
significant difference (but note that virt-ls is a fundamentally
sequential program).
It didn't crash or hang at any time during my testing.
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-p2v converts physical machines to virtual machines. Boot with a
live CD or over the network (PXE) and turn machines into KVM guests.
http://libguestfs.org/virt-v2v
- [Qemu-stable] [PATCH 7/7] curl: do not do aio_poll when waiting for a free CURLState, (continued)
- [Qemu-stable] [PATCH 7/7] curl: do not do aio_poll when waiting for a free CURLState, Paolo Bonzini, 2017/05/10
- [Qemu-stable] [PATCH 5/7] curl: convert CURLAIOCB to byte values, Paolo Bonzini, 2017/05/10
- [Qemu-stable] [PATCH 6/7] curl: convert readv to coroutines, Paolo Bonzini, 2017/05/10
- Re: [Qemu-stable] [Qemu-devel] [PATCH v2 0/7] curl: locking cleanups/fixes, coroutine conversion, remove aio_poll, no-reply, 2017/05/10
- Re: [Qemu-stable] [PATCH v2 0/7] curl: locking cleanups/fixes, coroutine conversion, remove aio_poll,
Richard W.M. Jones <=