* Ashijeet Acharya (ashijeetacha...@gmail.com) wrote: > 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 <ashijeetacha...@gmail.com>
Reviewed-by: Dr. David Alan Gilbert <dgilb...@redhat.com> > --- > include/migration/migration.h | 3 +++ > qemu-options.hx | 9 +++++++++ > vl.c | 4 ++++ > 3 files changed, 16 insertions(+) > > diff --git a/include/migration/migration.h b/include/migration/migration.h > index c309d23..40b3697 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 c534a2f..1e16ae8 100644 > --- a/qemu-options.hx > +++ b/qemu-options.hx > @@ -3574,6 +3574,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 c643d3f..cbcb459 100644 > --- a/vl.c > +++ b/vl.c > @@ -180,6 +180,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; > > @@ -3910,6 +3911,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; > -- > 2.6.2 > -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK