VIR_DEBUG("compressLevel=%d:%d compressThreads=%d:%d "
"decompressThreads=%d:%d cpuThrottleInitial=%d:%d "
"cpuThrottleIncrement=%d:%d tlsAlias=%s "
- "tlsHostname=%s",
+ "tlsHostname=%s downtimeLimit=%d:%llu",
params->compressLevel_set, params->compressLevel,
params->compressThreads_set, params->compressThreads,
params->decompressThreads_set, params->decompressThreads,
params->cpuThrottleInitial_set, params->cpuThrottleInitial,
params->cpuThrottleIncrement_set, params->cpuThrottleIncrement,
NULLSTR(params->migrateTLSAlias),
- NULLSTR(params->migrateTLSHostname));
+ NULLSTR(params->migrateTLSHostname),
+ params->downtimeLimit_set, params->downtimeLimit);
QEMU_CHECK_MONITOR_JSON(mon);
APPEND(params->VAR, \
virJSONValueObjectAppendString, VAR, FIELD)
+#define APPEND_ULONG(VAR, FIELD) \
+ APPEND(params->VAR ## _set, \
+ virJSONValueObjectAppendNumberUlong, VAR, FIELD)
+
APPEND_INT(compressLevel, "compress-level");
APPEND_INT(compressThreads, "compress-threads");
APPEND_INT(decompressThreads, "decompress-threads");
APPEND_INT(cpuThrottleIncrement, "cpu-throttle-increment");
APPEND_STR(migrateTLSAlias, "tls-creds");
APPEND_STR(migrateTLSHostname, "tls-hostname");
+ APPEND_ULONG(downtimeLimit, "downtime-limit");
#undef APPEND
#undef APPEND_INT
#undef APPEND_STR
+#undef APPEND_ULONG
if (virJSONValueObjectKeysNumber(args) == 0) {
ret = 0;
" \"compress-level\": 1,"
" \"cpu-throttle-initial\": 20,"
" \"tls-creds\": \"tls0\","
- " \"tls-hostname\": \"\""
+ " \"tls-hostname\": \"\","
+ " \"downtime-limit\": 500"
" }"
"}") < 0) {
goto cleanup;
#define CHECK_INT(VAR, FIELD, VALUE) \
CHECK_NUM(VAR, FIELD, VALUE, "%d")
+#define CHECK_ULONG(VAR, FIELD, VALUE) \
+ CHECK_NUM(VAR, FIELD, VALUE, "%llu")
+
#define CHECK_STR(VAR, FIELD, VALUE) \
do { \
if (!params.VAR) { \
CHECK_INT(cpuThrottleIncrement, "cpu-throttle-increment", 10);
CHECK_STR(migrateTLSAlias, "tls-creds", "tls0");
CHECK_STR(migrateTLSHostname, "tls-hostname", "");
+ CHECK_ULONG(downtimeLimit, "downtime-limit", 500ULL);
#undef CHECK_NUM
#undef CHECK_INT
+#undef CHECK_ULONG
#undef CHECK_STR
ret = 0;