From: "Dr. David Alan Gilbert" <dgilb...@redhat.com> Update 'info migrate' to display migration blocking information. If the outbound migration is not blocked, there is no change, however if it is blocked a message is displayed with a list of reasons why, e.g.
qemu-system-x86_64 -nographic -smp 4 -m 4G -M pc,usb=on \ -chardev null,id=n -device usb-serial,chardev=n \ -virtfs local,path=/home,mount_tag=fs,security_model=none \ -drive if=virtio,file=myimage.qcow2 (qemu) info migrate globals: store-global-state: on only-migratable: off send-configuration: on send-section-footer: on decompress-error-check: on clear-bitmap-shift: 18 Outgoing migration blocked: Migration is disabled when VirtFS export path '/home' is mounted in the guest using mount_tag 'fs' non-migratable device: 0000:00:01.2/1/usb-serial Signed-off-by: Dr. David Alan Gilbert <dgilb...@redhat.com> Message-Id: <20210202135522.127380-3-dgilb...@redhat.com> Reviewed-by: Eric Blake <ebl...@redhat.com> Reviewed-by: Peter Xu <pet...@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilb...@redhat.com> --- monitor/hmp-cmds.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c index 509d6b01ee..992ecf6f04 100644 --- a/monitor/hmp-cmds.c +++ b/monitor/hmp-cmds.c @@ -224,6 +224,15 @@ void hmp_info_migrate(Monitor *mon, const QDict *qdict) migration_global_dump(mon); + if (info->blocked) { + strList *reasons = info->blocked_reasons; + monitor_printf(mon, "Outgoing migration blocked:\n"); + while (reasons) { + monitor_printf(mon, " %s\n", reasons->value); + reasons = reasons->next; + } + } + if (info->has_status) { monitor_printf(mon, "Migration status: %s", MigrationStatus_str(info->status)); -- 2.29.2