mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-11-05 20:35:44 +00:00
qapi: Convert migrate_set_speed
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
This commit is contained in:
parent
4f0a993bf3
commit
3dc853832d
7 changed files with 28 additions and 16 deletions
|
@ -786,8 +786,7 @@ ETEXI
|
|||
.params = "value",
|
||||
.help = "set maximum speed (in bytes) for migrations. "
|
||||
"Defaults to MB if no size suffix is specified, ie. B/K/M/G/T",
|
||||
.user_print = monitor_user_noop,
|
||||
.mhandler.cmd_new = do_migrate_set_speed,
|
||||
.mhandler.cmd = hmp_migrate_set_speed,
|
||||
},
|
||||
|
||||
STEXI
|
||||
|
|
6
hmp.c
6
hmp.c
|
@ -673,3 +673,9 @@ void hmp_migrate_set_downtime(Monitor *mon, const QDict *qdict)
|
|||
double value = qdict_get_double(qdict, "value");
|
||||
qmp_migrate_set_downtime(value, NULL);
|
||||
}
|
||||
|
||||
void hmp_migrate_set_speed(Monitor *mon, const QDict *qdict)
|
||||
{
|
||||
int64_t value = qdict_get_int(qdict, "value");
|
||||
qmp_migrate_set_speed(value, NULL);
|
||||
}
|
||||
|
|
1
hmp.h
1
hmp.h
|
@ -48,5 +48,6 @@ void hmp_block_resize(Monitor *mon, const QDict *qdict);
|
|||
void hmp_snapshot_blkdev(Monitor *mon, const QDict *qdict);
|
||||
void hmp_migrate_cancel(Monitor *mon, const QDict *qdict);
|
||||
void hmp_migrate_set_downtime(Monitor *mon, const QDict *qdict);
|
||||
void hmp_migrate_set_speed(Monitor *mon, const QDict *qdict);
|
||||
|
||||
#endif
|
||||
|
|
12
migration.c
12
migration.c
|
@ -473,21 +473,17 @@ void qmp_migrate_cancel(Error **errp)
|
|||
migrate_fd_cancel(migrate_get_current());
|
||||
}
|
||||
|
||||
int do_migrate_set_speed(Monitor *mon, const QDict *qdict, QObject **ret_data)
|
||||
void qmp_migrate_set_speed(int64_t value, Error **errp)
|
||||
{
|
||||
int64_t d;
|
||||
MigrationState *s;
|
||||
|
||||
d = qdict_get_int(qdict, "value");
|
||||
if (d < 0) {
|
||||
d = 0;
|
||||
if (value < 0) {
|
||||
value = 0;
|
||||
}
|
||||
|
||||
s = migrate_get_current();
|
||||
s->bandwidth_limit = d;
|
||||
s->bandwidth_limit = value;
|
||||
qemu_file_set_rate_limit(s->file, s->bandwidth_limit);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void qmp_migrate_set_downtime(double value, Error **errp)
|
||||
|
|
|
@ -42,8 +42,6 @@ int qemu_start_incoming_migration(const char *uri);
|
|||
|
||||
int do_migrate(Monitor *mon, const QDict *qdict, QObject **ret_data);
|
||||
|
||||
int do_migrate_set_speed(Monitor *mon, const QDict *qdict, QObject **ret_data);
|
||||
|
||||
uint64_t migrate_max_downtime(void);
|
||||
|
||||
void do_info_migrate_print(Monitor *mon, const QObject *data);
|
||||
|
|
|
@ -1153,3 +1153,18 @@
|
|||
# Since: 0.14.0
|
||||
##
|
||||
{ 'command': 'migrate_set_downtime', 'data': {'value': 'number'} }
|
||||
|
||||
##
|
||||
# @migrate_set_speed
|
||||
#
|
||||
# Set maximum speed for migration.
|
||||
#
|
||||
# @value: maximum speed in bytes.
|
||||
#
|
||||
# Returns: nothing on success
|
||||
#
|
||||
# Notes: A value lesser than zero will be automatically round up to zero.
|
||||
#
|
||||
# Since: 0.14.0
|
||||
##
|
||||
{ 'command': 'migrate_set_speed', 'data': {'value': 'int'} }
|
||||
|
|
|
@ -492,10 +492,7 @@ EQMP
|
|||
{
|
||||
.name = "migrate_set_speed",
|
||||
.args_type = "value:o",
|
||||
.params = "value",
|
||||
.help = "set maximum speed (in bytes) for migrations",
|
||||
.user_print = monitor_user_noop,
|
||||
.mhandler.cmd_new = do_migrate_set_speed,
|
||||
.mhandler.cmd_new = qmp_marshal_input_migrate_set_speed,
|
||||
},
|
||||
|
||||
SQMP
|
||||
|
|
Loading…
Reference in a new issue