qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 18/23] migration: Use bandwidth_limit directly


From: Juan Quintela
Subject: [Qemu-devel] [PATCH 18/23] migration: Use bandwidth_limit directly
Date: Fri, 23 Sep 2011 14:57:07 +0200

Now that current_migration always exist, there is no reason for
max_throotle variable.

Signed-off-by: Juan Quintela <address@hidden>
---
 migration.c |   19 ++++++++++---------
 1 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/migration.c b/migration.c
index c382383..ea50a6f 100644
--- a/migration.c
+++ b/migration.c
@@ -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 = &current_migration_static;

@@ -385,14 +385,14 @@ 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)
 {
+    int64_t bandwidth_limit = current_migration->bandwidth_limit;
+
     memset(current_migration, 0, sizeof(current_migration));
+    current_migration->bandwidth_limit = bandwidth_limit;
     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) {
@@ -418,7 +418,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);
@@ -458,9 +458,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;
 }

-- 
1.7.6.2




reply via email to

[Prev in Thread] Current Thread [Next in Thread]