summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAshijeet Acharya2017-01-16 12:31:51 +0100
committerDr. David Alan Gilbert2017-01-24 18:54:47 +0100
commitd15c05fc1f9c0ddbbab1b2a08b976be82f2d0654 (patch)
tree97343cd2659883a84fc6477401fea4bcfbbbc2de
parentblock/vvfat: Remove the undesirable comment (diff)
downloadqemu-d15c05fc1f9c0ddbbab1b2a08b976be82f2d0654.tar.gz
qemu-d15c05fc1f9c0ddbbab1b2a08b976be82f2d0654.tar.xz
qemu-d15c05fc1f9c0ddbbab1b2a08b976be82f2d0654.zip
migration: Add a new option to enable only-migratable
Add a new option "--only-migratable" in qemu which will allow to add only those devices which will not fail qemu after migration. Devices set with the flag 'unmigratable' cannot be added when this option will be used. Signed-off-by: Ashijeet Acharya <ashijeetacharya@gmail.com> Message-Id: <1484566314-3987-3-git-send-email-ashijeetacharya@gmail.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
-rw-r--r--include/migration/migration.h3
-rw-r--r--qemu-options.hx9
-rw-r--r--vl.c4
3 files changed, 16 insertions, 0 deletions
diff --git a/include/migration/migration.h b/include/migration/migration.h
index c309d23370..40b369794e 100644
--- a/include/migration/migration.h
+++ b/include/migration/migration.h
@@ -38,6 +38,9 @@
#define QEMU_VM_COMMAND 0x08
#define QEMU_VM_SECTION_FOOTER 0x7e
+/* for vl.c */
+extern int only_migratable;
+
struct MigrationParams {
bool blk;
bool shared;
diff --git a/qemu-options.hx b/qemu-options.hx
index 780528d6ad..48c7f22819 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -3585,6 +3585,15 @@ be used to change settings (such as migration parameters) prior to issuing
the migrate_incoming to allow the migration to begin.
ETEXI
+DEF("only-migratable", 0, QEMU_OPTION_only_migratable, \
+ "-only-migratable allow only migratable devices\n", QEMU_ARCH_ALL)
+STEXI
+@item -only-migratable
+@findex -only-migratable
+Only allow migratable devices. Devices will not be allowed to enter an
+unmigratable state.
+ETEXI
+
DEF("nodefaults", 0, QEMU_OPTION_nodefaults, \
"-nodefaults don't create default devices\n", QEMU_ARCH_ALL)
STEXI
diff --git a/vl.c b/vl.c
index abb0900fe4..68e8c003d1 100644
--- a/vl.c
+++ b/vl.c
@@ -182,6 +182,7 @@ bool boot_strict;
uint8_t *boot_splash_filedata;
size_t boot_splash_filedata_size;
uint8_t qemu_extra_params_fw[2];
+int only_migratable; /* turn it off unless user states otherwise */
int icount_align_option;
@@ -3884,6 +3885,9 @@ int main(int argc, char **argv, char **envp)
}
incoming = optarg;
break;
+ case QEMU_OPTION_only_migratable:
+ only_migratable = 1;
+ break;
case QEMU_OPTION_nodefaults:
has_defaults = 0;
break;