* zhanghailiang (zhang.zhanghaili...@huawei.com) wrote:
> If VM is in COLO FT state, we should do some extra work before normal shutdown
> process. SVM will ignore the shutdown command if this command is issued 
> directly
> to it, PVM will send the shutdown command to SVM if it gets this command.
> 
> Cc: Paolo Bonzini <pbonz...@redhat.com>
> Signed-off-by: zhanghailiang <zhang.zhanghaili...@huawei.com>
> Signed-off-by: Li Zhijian <lizhij...@cn.fujitsu.com>
> ---
> v13:
> - Move COLO shutdown related codes to colo.c file (Dave's suggestion)

> diff --git a/migration/colo.c b/migration/colo.c
> index de01ade..2bea519 100644
> --- a/migration/colo.c
> +++ b/migration/colo.c
> @@ -248,6 +248,7 @@ static uint64_t colo_get_cmd_value(QEMUFile *f, uint32_t 
> expect_cmd,
>  static int colo_do_checkpoint_transaction(MigrationState *s,
>                                            QEMUSizedBuffer *buffer)
>  {
> +    int colo_shutdown;
>      QEMUFile *trans = NULL;
>      size_t size;
>      Error *local_err = NULL;
> @@ -277,6 +278,7 @@ static int colo_do_checkpoint_transaction(MigrationState 
> *s,
>          qemu_mutex_unlock_iothread();
>          goto out;
>      }
> +    colo_shutdown = colo_shutdown_requested;
>      vm_stop_force_state(RUN_STATE_COLO);
>      qemu_mutex_unlock_iothread();
>      trace_colo_vm_state_change("run", "stop");
> @@ -330,6 +332,18 @@ static int colo_do_checkpoint_transaction(MigrationState 
> *s,
>          goto out;
>      }
>  
> +    if (colo_shutdown) {

Why do you take a copy of colo_shutdown_requested rather than just use
it directly?

Dave
--
Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK

Reply via email to