e2660cb qemu: track 'cancelling' migration state

Authored and Committed by ericb 9 years ago
    qemu: track 'cancelling' migration state
    
    In qemu 2.3, the migration status will include 'cancelling' in the
    window between when an asynchronous cancel has been requested and
    when the migration is actually halted.  Previously, qemu hid this
    state and reported 'active'.  Libvirt manages the sequence okay
    even when the string is unrecognized (that is, it will report an
    unknown state:
    
    Migration: [ 69 %]^Cerror: internal error: unexpected migration status in cancelling.
    
    but the migration is still cancelled), but recognizing the string
    makes for a smoother user experience.
    
    * src/qemu/qemu_monitor.h
    (QEMU_MONITOR_MIGRATION_STATUS_CANCELLING): Add enum.
    * src/qemu/qemu_monitor.c (qemuMonitorMigrationStatus): Map it.
    * src/qemu/qemu_migration.c (qemuMigrationUpdateJobStatus): Adjust
    clients.
    * src/qemu/qemu_monitor_json.c
    (qemuMonitorJSONGetMigrationStatusReply): Likewise.
    
    Signed-off-by: Eric Blake <eblake@redhat.com>
    
        
file modified
+1 -0
file modified
+2 -1
file modified
+1 -0
file modified
+1 -0