• Amos Kong's avatar
    use inet_listen()/inet_connect() to support ipv6 migration · d5c5dacc
    Amos Kong authored
    Use help functions in qemu-socket.c for tcp migration,
    which already support ipv6 addresses.
    
    Currently errp will be set to UNDEFINED_ERROR when migration fails,
    qemu would output "migration failed: ...", and current user can
    see a message("An undefined error has occurred") in monitor.
    
    This patch changed tcp_start_outgoing_migration()/inet_connect()
    /inet_connect_opts(), socket error would be passed back,
    then current user can see a meaningful err message in monitor.
    
    Qemu will exit if listening fails, so output socket error
    to qemu stderr.
    
    For IPv6 brackets must be mandatory if you require a port.
    Referencing to RFC5952, the recommended format is:
      [2312::8274]:5200
    
    test status: Successed
    listen side: qemu-kvm .... -incoming tcp:[2312::8274]:5200
    client side: qemu-kvm ...
                 (qemu) migrate -d tcp:[2312::8274]:5200
    Signed-off-by: default avatarAmos Kong <akong@redhat.com>
    Reviewed-by: default avatarOrit Wasserman <owasserm@redhat.com>
    Reviewed-by: default avatarMichael Roth <mdroth@linux.vnet.ibm.com>
    Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
    d5c5dacc
migration.h 2.45 KB