The call to migrate_fd_error() was missing for non-socket backends, so
centralize it in qmp_migrate().
Before:
(qemu) migrate fd:ffff
migrate: An undefined error has occurred
(qemu) info migrate
(qemu)
After:
(qemu) migrate fd:ffff
migrate: An undefined error has occurred
(qemu) info migrate
capabilities: xbzrle: off
Migration status: failed
total time: 0 milliseconds
(The awful error message will be fixed later in the series).
Reviewed-by: Luiz Capitulino <lcapitulino@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
s->fd = inet_nonblocking_connect(host_port, tcp_wait_for_connect, s, &local_err);
if (local_err != NULL) {
- migrate_fd_error(s);
error_propagate(errp, local_err);
return -1;
}
if (ret < 0) {
DPRINTF("connect failed\n");
- migrate_fd_error(s);
return ret;
}
migrate_fd_connect(s);
}
if (ret < 0 || local_err) {
+ migrate_fd_error(s);
if (!local_err) {
error_set_errno(errp, -ret, QERR_UNDEFINED_ERROR);
} else {