mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-20 18:03:50 +03:00
qemu_migration: Unregister close callback only if connection still exists
When doing a peer-to-peer migration it may happen that the connection to the destination disappears. If that happens, there's no point in trying to unregister the close callback because the connection is closed already. It results only in polluting logs with this message: error : virNetSocketReadWire:1814 : End of file while reading data: : Input/output error and the reason for that is unregistering a connection callback results in RPC (among other things). Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1918211 Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
This commit is contained in:
parent
bd7d60ac52
commit
bab44aa963
@ -5214,9 +5214,11 @@ qemuMigrationSrcPerformPeer2Peer(virQEMUDriver *driver,
|
||||
|
||||
cleanup:
|
||||
virErrorPreserveLast(&orig_err);
|
||||
qemuDomainObjEnterRemote(vm);
|
||||
virConnectUnregisterCloseCallback(dconn, qemuMigrationSrcConnectionClosed);
|
||||
ignore_value(qemuDomainObjExitRemote(vm, false));
|
||||
if (dconn && virConnectIsAlive(dconn) == 1) {
|
||||
qemuDomainObjEnterRemote(vm);
|
||||
virConnectUnregisterCloseCallback(dconn, qemuMigrationSrcConnectionClosed);
|
||||
ignore_value(qemuDomainObjExitRemote(vm, false));
|
||||
}
|
||||
virErrorRestore(&orig_err);
|
||||
return ret;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user