qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH RFC 2/4] Curling: cmdline interface


From: Jules Wang
Subject: [Qemu-devel] [PATCH RFC 2/4] Curling: cmdline interface
Date: Tue, 10 Sep 2013 11:43:25 +0800

Parse the word 'curling' when incoming/outgoing migration is
starting. So we know whether to enable fault tolerant or not.

Signed-off-by: Jules Wang <address@hidden>
---
 include/migration/migration.h |  2 ++
 migration.c                   | 16 ++++++++++++++++
 2 files changed, 18 insertions(+)

diff --git a/include/migration/migration.h b/include/migration/migration.h
index 140e6b4..4cbb62f 100644
--- a/include/migration/migration.h
+++ b/include/migration/migration.h
@@ -162,4 +162,6 @@ size_t ram_control_save_page(QEMUFile *f, ram_addr_t 
block_offset,
                              ram_addr_t offset, size_t size,
                              int *bytes_sent);
 
+bool ft_enabled(void);
+
 #endif
diff --git a/migration.c b/migration.c
index 200d404..59c8f32 100644
--- a/migration.c
+++ b/migration.c
@@ -58,6 +58,12 @@ enum {
 static NotifierList migration_state_notifiers =
     NOTIFIER_LIST_INITIALIZER(migration_state_notifiers);
 
+static bool ft_mode;
+bool ft_enabled(void)
+{
+    return ft_mode;
+}
+
 /* When we add fault tolerance, we could have several
    migrations at once.  For now we don't need to add
    dynamic creation of migration */
@@ -78,6 +84,11 @@ void qemu_start_incoming_migration(const char *uri, Error 
**errp)
 {
     const char *p;
 
+    if (strstart(uri, "curling:", &p)) {
+        ft_mode = true;
+        uri = p;
+    }
+
     if (strstart(uri, "tcp:", &p))
         tcp_start_incoming_migration(p, errp);
 #ifdef CONFIG_RDMA
@@ -420,6 +431,11 @@ void qmp_migrate(const char *uri, bool has_blk, bool blk,
 
     s = migrate_init(&params);
 
+    if (strstart(uri, "curling:", &p)) {
+        ft_mode = true;
+        uri = p;
+    }
+
     if (strstart(uri, "tcp:", &p)) {
         tcp_start_outgoing_migration(s, p, &local_err);
 #ifdef CONFIG_RDMA
-- 
1.8.0.1





reply via email to

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