<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div>Isn't this something which was reported some weeks ago?<br><br>Stefan<div><br></div><div>Excuse my typo s<span style="font-size: 13pt;">ent from my mobile phone.</span></div></div><div><br>Anfang der weitergeleiteten E‑Mail:<br><br></div><blockquote type="cite"><div><b>Von:</b> Stefan Hajnoczi <<a href="mailto:stefanha@gmail.com">stefanha@gmail.com</a>><br><b>Datum:</b> 2. Januar 2015 17:23:08 MEZ<br><b>An:</b> Vladimir Sementsov-Ogievskiy <<a href="mailto:vsementsov@parallels.com">vsementsov@parallels.com</a>><br><b>Kopie:</b> <a href="mailto:amit.shah@redhat.com">amit.shah@redhat.com</a>, <a href="mailto:den@openvz.org">den@openvz.org</a>, <a href="mailto:qemu-stable@nongnu.org">qemu-stable@nongnu.org</a>, <a href="mailto:qemu-devel@nongnu.org">qemu-devel@nongnu.org</a>, <a href="mailto:quintela@redhat.com">quintela@redhat.com</a><br><b>Betreff:</b> <b>Re: [Qemu-stable] [Qemu-devel] [PATCH v2 1/1] migration/block: fix pending() return value</b><br><br></div></blockquote><div><span></span></div><blockquote type="cite"><div><span>On Tue, Dec 30, 2014 at 01:04:16PM +0300, Vladimir Sementsov-Ogievskiy wrote:</span><br><blockquote type="cite"><span>Because of wrong return value of .save_live_pending() in</span><br></blockquote><blockquote type="cite"><span>migration/block.c, migration finishes before the whole disk is</span><br></blockquote><blockquote type="cite"><span>transferred. Such situation occurs when the migration process is fast</span><br></blockquote><blockquote type="cite"><span>enough, for example when source and dest are on the same host.</span><br></blockquote><blockquote type="cite"><span></span><br></blockquote><blockquote type="cite"><span>If in the bulk phase we return something < max_size, we will skip</span><br></blockquote><blockquote type="cite"><span>transferring the tail of the device. Currently we have "set pending to</span><br></blockquote><blockquote type="cite"><span>BLOCK_SIZE if it is zero" for bulk phase, but there no guarantee, that</span><br></blockquote><blockquote type="cite"><span>it will be < max_size.</span><br></blockquote><blockquote type="cite"><span></span><br></blockquote><blockquote type="cite"><span>True approach is to return, for example, max_size+1 when we are in the</span><br></blockquote><blockquote type="cite"><span>bulk phase.</span><br></blockquote><blockquote type="cite"><span></span><br></blockquote><blockquote type="cite"><span>Signed-off-by: Vladimir Sementsov-Ogievskiy <<a href="mailto:vsementsov@parallels.com">vsementsov@parallels.com</a>></span><br></blockquote><blockquote type="cite"><span>---</span><br></blockquote><blockquote type="cite"><span> migration/block.c | 4 ++--</span><br></blockquote><blockquote type="cite"><span> 1 file changed, 2 insertions(+), 2 deletions(-)</span><br></blockquote><span></span><br><span>Yikes, this is a nasty bug.  CCing qemu-stable.</span><br><span></span><br><span>Thanks, applied to my block tree:</span><br><span><a href="https://github.com/stefanha/qemu/commits/block">https://github.com/stefanha/qemu/commits/block</a></span><br><span></span><br><span>Stefan</span><br></div></blockquote></body></html>