colo.h (1033B)
1/* 2 * COarse-grain LOck-stepping Virtual Machines for Non-stop Service (COLO) 3 * (a.k.a. Fault Tolerance or Continuous Replication) 4 * 5 * Copyright (c) 2016 HUAWEI TECHNOLOGIES CO., LTD. 6 * Copyright (c) 2016 FUJITSU LIMITED 7 * Copyright (c) 2016 Intel Corporation 8 * 9 * This work is licensed under the terms of the GNU GPL, version 2 or 10 * later. See the COPYING file in the top-level directory. 11 */ 12 13#ifndef QEMU_COLO_H 14#define QEMU_COLO_H 15 16#include "qapi/qapi-types-migration.h" 17 18enum colo_event { 19 COLO_EVENT_NONE, 20 COLO_EVENT_CHECKPOINT, 21 COLO_EVENT_FAILOVER, 22}; 23 24void migrate_start_colo_process(MigrationState *s); 25bool migration_in_colo_state(void); 26 27/* loadvm */ 28int migration_incoming_enable_colo(void); 29void migration_incoming_disable_colo(void); 30bool migration_incoming_colo_enabled(void); 31void *colo_process_incoming_thread(void *opaque); 32bool migration_incoming_in_colo_state(void); 33 34COLOMode get_colo_mode(void); 35 36/* failover */ 37void colo_do_failover(void); 38 39void colo_checkpoint_notify(void *opaque); 40#endif