summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorJunyan He <junyan.he@intel.com>2018-07-18 15:48:02 +0800
committerMichael S. Tsirkin <mst@redhat.com>2018-08-10 13:29:39 +0300
commit469dd51bc664979f159d47885997d482991394b8 (patch)
treeb120b02b4b7b588cebe21256b1d3b7db814b8fc0
parentfaf8a13d80de98b43342a7ec9878b4fd76b18327 (diff)
downloadfocaccia-qemu-469dd51bc664979f159d47885997d482991394b8.tar.gz
focaccia-qemu-469dd51bc664979f159d47885997d482991394b8.zip
migration/ram: Add check and info message to nvdimm post copy.
The nvdimm kind memory does not support post copy now.
We disable post copy if we have nvdimm memory and print some
log hint to user.

Signed-off-by: Junyan He <junyan.he@intel.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
-rw-r--r--migration/ram.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/migration/ram.c b/migration/ram.c
index 24dea2730c..5beefae7f5 100644
--- a/migration/ram.c
+++ b/migration/ram.c
@@ -3906,6 +3906,15 @@ static int ram_load(QEMUFile *f, void *opaque, int version_id)
 
 static bool ram_has_postcopy(void *opaque)
 {
+    RAMBlock *rb;
+    RAMBLOCK_FOREACH_MIGRATABLE(rb) {
+        if (ramblock_is_pmem(rb)) {
+            info_report("Block: %s, host: %p is a nvdimm memory, postcopy"
+                         "is not supported now!", rb->idstr, rb->host);
+            return false;
+        }
+    }
+
     return migrate_postcopy_ram();
 }