[Spice-devel] [spice-protocol PATCH 0/2] seamless migration support

Alon Levy alevy at redhat.com
Sun Aug 26 02:34:31 PDT 2012


On Wed, Aug 15, 2012 at 10:55:36AM +0300, Yonit Halperin wrote:
> This patch series, together with the patches following it for spice-common, spice, and spice-gtk,
> introduce seamless migration support.
> 

ACK Series (protocol, common, server).

Some spelling errors that can be corrected in a later patch.

Great job!

Alon

> More details about seamless migration can be found in the commit msg of the 2nd
> patch.
> 
> rhbz: 846910 836123 846911
> related rhbz: 836135 (libvirt) 836133 (qemu)
> Corresponding qemu patch series will be sent shortly. The qemu changes are required
> for delaying libvirt from killing the src qemu till spice migration is complete. A qmp event is added
> + a 'migrated' flag for 'qeury-spice' output.
> 
> TODO:
> - change the display channel migration data to hold cache and dictionary data only for the channel instance
>   which actually restores them.
> - consistent usb/smartcard channel ids: the channel ids of spicevmc are determined by the order of loading
>   the devices interfaces. If the order of the devices in the qemu execution line is different between the
>   migration src and dest, the migration data reaches the wrong channels and the migration is invalid.
>   One solution can be to save the channel ids using a vmstate of the devices. However the client connects
>   to the destination before the vmstate is loaded, so we will need to reorder the connections after the vmstate
>   is loaded.
> - bandwidth detection: the bandwidth detection we execute on connection startup is not executed on
>   the destination side. It is not executed in order to avoid a hiccup, and also since we plan to get rid of it, and
>   have a dynamic detection that employs data we transfer to the client anyway.
>   The bandwidth setting is set in the main channel, and the display/snd channels queries it
>   for tuning their setting. Since it is probable that the bandwidth will stay similar after migration,
>   we may want to migrate low/high bandwidth flag as part of the main channel, and notify
>   the rest of the channels when setting it (since they may be restored before the main channel is restored)
> - latest qemu qxl migration is broken. I hit a lot of problems related to surfaces.
>   I tested the patches using old qemu. Need to find out what went wrong in latest qemu.
> - display channel optimizations: don't send surfaces info as part of the migration data if it is faster to
>   resend them to the client by demand
> - multi-client support
> 
> 
> Yonit Halperin (2):
>   add SPICE_MSG_MAIN_AGENT_CONNECTED_TOKENS
>   seamless migration support
> 
>  spice/enums.h    |    6 ++++++
>  spice/protocol.h |    2 ++
>  2 files changed, 8 insertions(+), 0 deletions(-)
> 
> -- 
> 1.7.7.6
> 
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel


More information about the Spice-devel mailing list