]> Git Repo - qemu.git/commit
COLO: Introduce checkpointing protocol
authorzhanghailiang <[email protected]>
Thu, 27 Oct 2016 06:42:57 +0000 (14:42 +0800)
committerAmit Shah <[email protected]>
Sun, 30 Oct 2016 09:47:39 +0000 (15:17 +0530)
commit4f97558e100f66f953ba7576b0ced146e6846997
tree9291afc621c00f6d1f66d41ac2e59a0ce76b14d5
parent56ba83d2a871a28ec18b8bb0fcec74ed02bbe06c
COLO: Introduce checkpointing protocol

We need communications protocol of user-defined to control
the checkpointing process.

The new checkpointing request is started by Primary VM,
and the interactive process like below:

Checkpoint synchronizing points:

                   Primary               Secondary
                                            initial work
'checkpoint-ready'    <-------------------- @

'checkpoint-request'  @ -------------------->
                                            Suspend (Only in hybrid mode)
'checkpoint-reply'    <-------------------- @
                      Suspend&Save state
'vmstate-send'        @ -------------------->
                      Send state            Receive state
'vmstate-received'    <-------------------- @
                      Release packets       Load state
'vmstate-load'        <-------------------- @
                      Resume                Resume (Only in hybrid mode)

                      Start Comparing (Only in hybrid mode)
NOTE:
 1) '@' who sends the message
 2) Every sync-point is synchronized by two sides with only
    one handshake(single direction) for low-latency.
    If more strict synchronization is required, a opposite direction
    sync-point should be added.
 3) Since sync-points are single direction, the remote side may
    go forward a lot when this side just receives the sync-point.
 4) For now, we only support 'periodic' checkpoint, for which
   the Secondary VM is not running, later we will support 'hybrid' mode.

Signed-off-by: zhanghailiang <[email protected]>
Signed-off-by: Li Zhijian <[email protected]>
Signed-off-by: Gonglei <[email protected]>
Cc: Eric Blake <[email protected]>
Cc: Markus Armbruster <[email protected]>
Cc: Dr. David Alan Gilbert <[email protected]>
Reviewed-by: Dr. David Alan Gilbert <[email protected]>
Reviewed-by: Amit Shah <[email protected]>
Signed-off-by: Amit Shah <[email protected]>
migration/colo.c
migration/trace-events
qapi-schema.json
This page took 0.027142 seconds and 4 git commands to generate.