diff mbox series

savevm: check for incoming-state in savevm

Message ID 1612266107-76091-1-git-send-email-lichun@ruijie.com.cn
State New
Headers show
Series savevm: check for incoming-state in savevm | expand

Commit Message

lichun Feb. 2, 2021, 11:41 a.m. UTC
Running #qemu-system-i386 test.img -monitor stdio -incoming tcp:0.0.0.0:1234
        (qemu) savevm
we get:

before the patch:
    bdrv_co_pwritev: Assertion `!(bs->open_flags & 0x0800)' failed.
    Aborted
after:
    Error: Guest is waiting for an incoming migration

Signed-off-by: lichun <lichun@ruijie.com.cn>
---
 migration/savevm.c | 5 +++++
 1 file changed, 5 insertions(+)
diff mbox series

Patch

diff --git a/migration/savevm.c b/migration/savevm.c
index 4f3b69e..84e76e4 100644
--- a/migration/savevm.c
+++ b/migration/savevm.c
@@ -1522,6 +1522,11 @@  static int qemu_savevm_state(QEMUFile *f, Error **errp)
         return -EINVAL;
     }
 
+    if (runstate_check(RUN_STATE_INMIGRATE)) {
+        error_setg(errp, "Guest is waiting for an incoming migration");
+        return -EINVAL;
+    }
+
     if (migrate_use_block()) {
         error_setg(errp, "Block migration and snapshots are incompatible");
         return -EINVAL;