]>
Commit | Line | Data |
---|---|---|
35a6ed4f HZ |
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 "qemu-common.h" | |
5821ebf9 | 17 | #include "migration/migration.h" |
25d0c16f HZ |
18 | #include "qemu/coroutine_int.h" |
19 | #include "qemu/thread.h" | |
d89e666e | 20 | #include "qemu/main-loop.h" |
35a6ed4f HZ |
21 | |
22 | bool colo_supported(void); | |
5821ebf9 | 23 | void colo_info_init(void); |
35a6ed4f | 24 | |
0b827d5e HZ |
25 | void migrate_start_colo_process(MigrationState *s); |
26 | bool migration_in_colo_state(void); | |
27 | ||
25d0c16f HZ |
28 | /* loadvm */ |
29 | bool migration_incoming_enable_colo(void); | |
30 | void migration_incoming_exit_colo(void); | |
31 | void *colo_process_incoming_thread(void *opaque); | |
32 | bool migration_incoming_in_colo_state(void); | |
d89e666e HZ |
33 | |
34 | COLOMode get_colo_mode(void); | |
b3f7f0c5 HZ |
35 | |
36 | /* failover */ | |
37 | void colo_do_failover(MigrationState *s); | |
479125d5 HZ |
38 | |
39 | void colo_checkpoint_notify(void *opaque); | |
35a6ed4f | 40 | #endif |