1/* AUTOMATICALLY GENERATED, DO NOT MODIFY */
2
3/*
4 * Schema-defined QAPI types
5 *
6 * Copyright IBM, Corp. 2011
7 * Copyright (c) 2013-2018 Red Hat Inc.
8 *
9 * This work is licensed under the terms of the GNU LGPL, version 2.1 or later.
10 * See the COPYING.LIB file in the top-level directory.
11 */
12
13#include "qemu/osdep.h"
14#include "qapi/dealloc-visitor.h"
15#include "qapi-types-migration.h"
16#include "qapi-visit-migration.h"
17
18void qapi_free_MigrationStats(MigrationStats *obj)
19{
20 Visitor *v;
21
22 if (!obj) {
23 return;
24 }
25
26 v = qapi_dealloc_visitor_new();
27 visit_type_MigrationStats(v, NULL, &obj, NULL);
28 visit_free(v);
29}
30
31void qapi_free_XBZRLECacheStats(XBZRLECacheStats *obj)
32{
33 Visitor *v;
34
35 if (!obj) {
36 return;
37 }
38
39 v = qapi_dealloc_visitor_new();
40 visit_type_XBZRLECacheStats(v, NULL, &obj, NULL);
41 visit_free(v);
42}
43
44void qapi_free_CompressionStats(CompressionStats *obj)
45{
46 Visitor *v;
47
48 if (!obj) {
49 return;
50 }
51
52 v = qapi_dealloc_visitor_new();
53 visit_type_CompressionStats(v, NULL, &obj, NULL);
54 visit_free(v);
55}
56
57const QEnumLookup MigrationStatus_lookup = {
58 .array = (const char *const[]) {
59 [MIGRATION_STATUS_NONE] = "none",
60 [MIGRATION_STATUS_SETUP] = "setup",
61 [MIGRATION_STATUS_CANCELLING] = "cancelling",
62 [MIGRATION_STATUS_CANCELLED] = "cancelled",
63 [MIGRATION_STATUS_ACTIVE] = "active",
64 [MIGRATION_STATUS_POSTCOPY_ACTIVE] = "postcopy-active",
65 [MIGRATION_STATUS_POSTCOPY_PAUSED] = "postcopy-paused",
66 [MIGRATION_STATUS_POSTCOPY_RECOVER] = "postcopy-recover",
67 [MIGRATION_STATUS_COMPLETED] = "completed",
68 [MIGRATION_STATUS_FAILED] = "failed",
69 [MIGRATION_STATUS_COLO] = "colo",
70 [MIGRATION_STATUS_PRE_SWITCHOVER] = "pre-switchover",
71 [MIGRATION_STATUS_DEVICE] = "device",
72 },
73 .size = MIGRATION_STATUS__MAX
74};
75
76void qapi_free_MigrationInfo(MigrationInfo *obj)
77{
78 Visitor *v;
79
80 if (!obj) {
81 return;
82 }
83
84 v = qapi_dealloc_visitor_new();
85 visit_type_MigrationInfo(v, NULL, &obj, NULL);
86 visit_free(v);
87}
88
89const QEnumLookup MigrationCapability_lookup = {
90 .array = (const char *const[]) {
91 [MIGRATION_CAPABILITY_XBZRLE] = "xbzrle",
92 [MIGRATION_CAPABILITY_RDMA_PIN_ALL] = "rdma-pin-all",
93 [MIGRATION_CAPABILITY_AUTO_CONVERGE] = "auto-converge",
94 [MIGRATION_CAPABILITY_ZERO_BLOCKS] = "zero-blocks",
95 [MIGRATION_CAPABILITY_COMPRESS] = "compress",
96 [MIGRATION_CAPABILITY_EVENTS] = "events",
97 [MIGRATION_CAPABILITY_POSTCOPY_RAM] = "postcopy-ram",
98 [MIGRATION_CAPABILITY_X_COLO] = "x-colo",
99 [MIGRATION_CAPABILITY_RELEASE_RAM] = "release-ram",
100 [MIGRATION_CAPABILITY_BLOCK] = "block",
101 [MIGRATION_CAPABILITY_RETURN_PATH] = "return-path",
102 [MIGRATION_CAPABILITY_PAUSE_BEFORE_SWITCHOVER] = "pause-before-switchover",
103 [MIGRATION_CAPABILITY_MULTIFD] = "multifd",
104 [MIGRATION_CAPABILITY_DIRTY_BITMAPS] = "dirty-bitmaps",
105 [MIGRATION_CAPABILITY_POSTCOPY_BLOCKTIME] = "postcopy-blocktime",
106 [MIGRATION_CAPABILITY_LATE_BLOCK_ACTIVATE] = "late-block-activate",
107 [MIGRATION_CAPABILITY_X_IGNORE_SHARED] = "x-ignore-shared",
108 },
109 .size = MIGRATION_CAPABILITY__MAX
110};
111
112void qapi_free_MigrationCapabilityStatus(MigrationCapabilityStatus *obj)
113{
114 Visitor *v;
115
116 if (!obj) {
117 return;
118 }
119
120 v = qapi_dealloc_visitor_new();
121 visit_type_MigrationCapabilityStatus(v, NULL, &obj, NULL);
122 visit_free(v);
123}
124
125void qapi_free_MigrationCapabilityStatusList(MigrationCapabilityStatusList *obj)
126{
127 Visitor *v;
128
129 if (!obj) {
130 return;
131 }
132
133 v = qapi_dealloc_visitor_new();
134 visit_type_MigrationCapabilityStatusList(v, NULL, &obj, NULL);
135 visit_free(v);
136}
137
138const QEnumLookup MigrationParameter_lookup = {
139 .array = (const char *const[]) {
140 [MIGRATION_PARAMETER_ANNOUNCE_INITIAL] = "announce-initial",
141 [MIGRATION_PARAMETER_ANNOUNCE_MAX] = "announce-max",
142 [MIGRATION_PARAMETER_ANNOUNCE_ROUNDS] = "announce-rounds",
143 [MIGRATION_PARAMETER_ANNOUNCE_STEP] = "announce-step",
144 [MIGRATION_PARAMETER_COMPRESS_LEVEL] = "compress-level",
145 [MIGRATION_PARAMETER_COMPRESS_THREADS] = "compress-threads",
146 [MIGRATION_PARAMETER_DECOMPRESS_THREADS] = "decompress-threads",
147 [MIGRATION_PARAMETER_COMPRESS_WAIT_THREAD] = "compress-wait-thread",
148 [MIGRATION_PARAMETER_CPU_THROTTLE_INITIAL] = "cpu-throttle-initial",
149 [MIGRATION_PARAMETER_CPU_THROTTLE_INCREMENT] = "cpu-throttle-increment",
150 [MIGRATION_PARAMETER_TLS_CREDS] = "tls-creds",
151 [MIGRATION_PARAMETER_TLS_HOSTNAME] = "tls-hostname",
152 [MIGRATION_PARAMETER_TLS_AUTHZ] = "tls-authz",
153 [MIGRATION_PARAMETER_MAX_BANDWIDTH] = "max-bandwidth",
154 [MIGRATION_PARAMETER_DOWNTIME_LIMIT] = "downtime-limit",
155 [MIGRATION_PARAMETER_X_CHECKPOINT_DELAY] = "x-checkpoint-delay",
156 [MIGRATION_PARAMETER_BLOCK_INCREMENTAL] = "block-incremental",
157 [MIGRATION_PARAMETER_MULTIFD_CHANNELS] = "multifd-channels",
158 [MIGRATION_PARAMETER_XBZRLE_CACHE_SIZE] = "xbzrle-cache-size",
159 [MIGRATION_PARAMETER_MAX_POSTCOPY_BANDWIDTH] = "max-postcopy-bandwidth",
160 [MIGRATION_PARAMETER_MAX_CPU_THROTTLE] = "max-cpu-throttle",
161 },
162 .size = MIGRATION_PARAMETER__MAX
163};
164
165void qapi_free_MigrateSetParameters(MigrateSetParameters *obj)
166{
167 Visitor *v;
168
169 if (!obj) {
170 return;
171 }
172
173 v = qapi_dealloc_visitor_new();
174 visit_type_MigrateSetParameters(v, NULL, &obj, NULL);
175 visit_free(v);
176}
177
178void qapi_free_MigrationParameters(MigrationParameters *obj)
179{
180 Visitor *v;
181
182 if (!obj) {
183 return;
184 }
185
186 v = qapi_dealloc_visitor_new();
187 visit_type_MigrationParameters(v, NULL, &obj, NULL);
188 visit_free(v);
189}
190
191const QEnumLookup COLOMessage_lookup = {
192 .array = (const char *const[]) {
193 [COLO_MESSAGE_CHECKPOINT_READY] = "checkpoint-ready",
194 [COLO_MESSAGE_CHECKPOINT_REQUEST] = "checkpoint-request",
195 [COLO_MESSAGE_CHECKPOINT_REPLY] = "checkpoint-reply",
196 [COLO_MESSAGE_VMSTATE_SEND] = "vmstate-send",
197 [COLO_MESSAGE_VMSTATE_SIZE] = "vmstate-size",
198 [COLO_MESSAGE_VMSTATE_RECEIVED] = "vmstate-received",
199 [COLO_MESSAGE_VMSTATE_LOADED] = "vmstate-loaded",
200 },
201 .size = COLO_MESSAGE__MAX
202};
203
204const QEnumLookup COLOMode_lookup = {
205 .array = (const char *const[]) {
206 [COLO_MODE_NONE] = "none",
207 [COLO_MODE_PRIMARY] = "primary",
208 [COLO_MODE_SECONDARY] = "secondary",
209 },
210 .size = COLO_MODE__MAX
211};
212
213const QEnumLookup FailoverStatus_lookup = {
214 .array = (const char *const[]) {
215 [FAILOVER_STATUS_NONE] = "none",
216 [FAILOVER_STATUS_REQUIRE] = "require",
217 [FAILOVER_STATUS_ACTIVE] = "active",
218 [FAILOVER_STATUS_COMPLETED] = "completed",
219 [FAILOVER_STATUS_RELAUNCH] = "relaunch",
220 },
221 .size = FAILOVER_STATUS__MAX
222};
223
224const QEnumLookup COLOExitReason_lookup = {
225 .array = (const char *const[]) {
226 [COLO_EXIT_REASON_NONE] = "none",
227 [COLO_EXIT_REASON_REQUEST] = "request",
228 [COLO_EXIT_REASON_ERROR] = "error",
229 [COLO_EXIT_REASON_PROCESSING] = "processing",
230 },
231 .size = COLO_EXIT_REASON__MAX
232};
233
234#if defined(CONFIG_REPLICATION)
235void qapi_free_ReplicationStatus(ReplicationStatus *obj)
236{
237 Visitor *v;
238
239 if (!obj) {
240 return;
241 }
242
243 v = qapi_dealloc_visitor_new();
244 visit_type_ReplicationStatus(v, NULL, &obj, NULL);
245 visit_free(v);
246}
247#endif /* defined(CONFIG_REPLICATION) */
248
249void qapi_free_COLOStatus(COLOStatus *obj)
250{
251 Visitor *v;
252
253 if (!obj) {
254 return;
255 }
256
257 v = qapi_dealloc_visitor_new();
258 visit_type_COLOStatus(v, NULL, &obj, NULL);
259 visit_free(v);
260}
261
262/* Dummy declaration to prevent empty .o file */
263char qapi_dummy_qapi_types_migration_c;
264