qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 2/3] move vm stop/start to migrate_set_state


From: Dor Laor
Subject: Re: [Qemu-devel] [PATCH 2/3] move vm stop/start to migrate_set_state
Date: Tue, 14 Jul 2009 11:48:11 +0300
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1b3pre) Gecko/20090513 Fedora/3.0-2.3.beta2.fc11 Lightning/1.0pre Thunderbird/3.0b2

On 07/13/2009 05:52 PM, Anthony Liguori wrote:
Gleb Natapov wrote:
With unreliable socket it doesn't matter what write() returns data may
or may not reach the destination regardless, with reliable sockets
write() succeeds only after data was acked by the receiver, but it still
doesn't mean that data will be read from destination socket.

You are correct and we handle both of these cases appropriately. In the
event that we think we completed a migration successfully and we really
didn't because of a lost network connection, the result is both the
source and destination are stopped. A third party can resume the source
and continue along happily.

The case being debated is whether write() can ever actually complete and
yet still return an error. In this case, since we automatically resume
the source on error, the result would be two copies of the VM running.

I haven't seen any evidence that this case could actually happen other
than theoretic speculation. I just at the migration code and it's not a
simple change to try and be conservative wrt this case because of the
way we do buffering.


Reminder: please remember to commit for saving the running state so we won't resume paused guest after successful migration.


Regards,

Anthony Liguori

--
Gleb.








reply via email to

[Prev in Thread] Current Thread [Next in Thread]