qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 16/17] migration: adjust migration_thread() proc


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH 16/17] migration: adjust migration_thread() process for page flipping
Date: Tue, 26 Nov 2013 15:11:46 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130923 Thunderbird/17.0.9

Il 26/11/2013 14:53, Lei Li ha scritto:
> 1) ram_save_setup stage, it will send all the bytes in this stages
>    to destination, and send_pipefd by ram_control_before_iterate
>    at the end of it.

ram_save_setup runs doesn't send anything from guest RAM.  It sends the
lengths of the various blocks.  As you said, at the end of
ram_save_setup you send the pipefd.

ram_save_iterate runs before ram_save_complete.  ram_save_iterate and
ram_save_complete write data with exactly the same format.  Both of them
can use ram_save_page

It should not matter if some pages are sent as part of ram_save_iterate
and others as part of ram_save_complete.

One possibility is that you are hitting a bug due to the way you ignore
the "0x01" byte that send_pipefd places on the socket.

>> Oops.  I might have said this before thinking about postcopy and/or
>> before seeing the benchmark results from Juan's patches.  If this part
>> of the patch is just an optimization, I'd rather leave it out for now.
> 
> I am afraid that page flipping can not proceed correctly without this..

I really would like to understand why, because it really shouldn't (this
shouldn't be a place where you need a hook).

Paolo




reply via email to

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