This series adds a new command line option "--only-migratable" which will only allow addition of those devices to a QEMU instance which are migratable and do not abruptly fail QEMU after migration.
Patch 1 adds the new option "-only-migratable". Patch 2 adds compatibility for various "device adding" options for both via command line and hotplug methods. Patch 3 handles the special case of devices which become unmigratable dynamically by making call to "migrate_add_blocker". Here we fail the particular action of the device which results in an unmigratable VM. Eg: 9pfs fails to mount the filesystem. Ashijeet Acharya (3): migration: Add a new option to enable only-migratable migration: Allow "device add" options to only add migratable devices migration: disallow migrate_add_blocker during migration block/qcow.c | 11 ++++++++++- block/vdi.c | 11 ++++++++++- block/vhdx.c | 20 ++++++++++++++------ block/vmdk.c | 12 +++++++++++- block/vpc.c | 15 ++++++++++++--- block/vvfat.c | 24 ++++++++++++++++-------- hw/9pfs/9p.c | 22 ++++++++++++++++++---- hw/display/virtio-gpu.c | 35 ++++++++++++++++++++++------------- hw/intc/arm_gic_kvm.c | 20 ++++++++++++++------ hw/intc/arm_gicv3_its_kvm.c | 21 ++++++++++++++------- hw/intc/arm_gicv3_kvm.c | 22 +++++++++++++++------- hw/misc/ivshmem.c | 17 +++++++++++++---- hw/scsi/vhost-scsi.c | 27 +++++++++++++++++++++------ hw/usb/bus.c | 15 +++++++++++++++ hw/virtio/vhost.c | 11 ++++++++++- include/migration/migration.h | 9 ++++++++- migration/migration.c | 42 ++++++++++++++++++++++++++++++++++++++++-- qdev-monitor.c | 9 +++++++++ qemu-options.hx | 10 ++++++++++ stubs/migr-blocker.c | 3 ++- target-i386/kvm.c | 19 ++++++++++++++++--- vl.c | 4 ++++ 22 files changed, 304 insertions(+), 75 deletions(-) -- 2.6.2