@@ -31,14 +31,14 @@
do { } while (0)
#endif
-/* Migration speed throttling */
-static int64_t max_throttle = (32 << 20);
+#define MAX_THROTTLE (32 << 20) /* Migration speed throttling */
/* When we add fault tolerance, we could have several
migrations at once. For now we don't need to add
dynamic creation of migration */
static MigrationState current_migration_static = {
.state = MIG_STATE_NONE,
+ .bandwidth_limit = MAX_THROTTLE,
};
static MigrationState *current_migration = ¤t_migration_static;
@@ -375,14 +375,12 @@ void migrate_fd_connect(MigrationState *s)
migrate_fd_put_ready(s);
}
-static void migrate_init_state(Monitor *mon, int64_t bandwidth_limit,
- int detach, int blk, int inc)
+static void migrate_init_state(Monitor *mon, int detach, int blk, int inc)
{
memset(current_migration, 0, sizeof(current_migration));
current_migration->blk = blk;
current_migration->shared = inc;
current_migration->mon = NULL;
- current_migration->bandwidth_limit = bandwidth_limit;
current_migration->state = MIG_STATE_NONE;
if (!detach) {
@@ -408,7 +406,7 @@ int do_migrate(Monitor *mon, const QDict *qdict, QObject **ret_data)
return -1;
}
- migrate_init_state(mon, max_throttle, detach, blk, inc);
+ migrate_init_state(mon, detach, blk, inc);
if (strstart(uri, "tcp:", &p)) {
ret = tcp_start_outgoing_migration(current_migration, p);
@@ -448,9 +446,10 @@ int do_migrate_set_speed(Monitor *mon, const QDict *qdict, QObject **ret_data)
if (d < 0) {
d = 0;
}
- max_throttle = d;
+ current_migration->bandwidth_limit = d;
- qemu_file_set_rate_limit(current_migration->file, max_throttle);
+ qemu_file_set_rate_limit(current_migration->file,
+ current_migration->bandwidth_limit);
return 0;
}
Now that current_migration is static, there is no reason for max_throotle variable. Signed-off-by: Juan Quintela <quintela@redhat.com> --- migration.c | 15 +++++++-------- 1 files changed, 7 insertions(+), 8 deletions(-)