[pve-devel] Fwd: [Qemu-stable] [Qemu-devel] [PATCH v2 1/1] migration/block: fix pending() return value

Stefan Priebe - Profihost AG s.priebe at profihost.ag
Fri Jan 2 17:37:17 CET 2015


Isn't this something which was reported some weeks ago?

Stefan

Excuse my typo sent from my mobile phone.

Anfang der weitergeleiteten E‑Mail:

> Von: Stefan Hajnoczi <stefanha at gmail.com>
> Datum: 2. Januar 2015 17:23:08 MEZ
> An: Vladimir Sementsov-Ogievskiy <vsementsov at parallels.com>
> Kopie: amit.shah at redhat.com, den at openvz.org, qemu-stable at nongnu.org, qemu-devel at nongnu.org, quintela at redhat.com
> Betreff: Re: [Qemu-stable] [Qemu-devel] [PATCH v2 1/1] migration/block: fix pending() return value
>> On Tue, Dec 30, 2014 at 01:04:16PM +0300, Vladimir Sementsov-Ogievskiy wrote:
>> Because of wrong return value of .save_live_pending() in
>> migration/block.c, migration finishes before the whole disk is
>> transferred. Such situation occurs when the migration process is fast
>> enough, for example when source and dest are on the same host.
>> 
>> If in the bulk phase we return something < max_size, we will skip
>> transferring the tail of the device. Currently we have "set pending to
>> BLOCK_SIZE if it is zero" for bulk phase, but there no guarantee, that
>> it will be < max_size.
>> 
>> True approach is to return, for example, max_size+1 when we are in the
>> bulk phase.
>> 
>> Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov at parallels.com>
>> ---
>> migration/block.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
> 
> Yikes, this is a nasty bug.  CCing qemu-stable.
> 
> Thanks, applied to my block tree:
> https://github.com/stefanha/qemu/commits/block
> 
> Stefan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://pve.proxmox.com/pipermail/pve-devel/attachments/20150102/531e171b/attachment.html>


More information about the pve-devel mailing list