Bug 970936 - It reported an extra input/output error while migrated with the tls environment
It reported an extra input/output error while migrated with the tls environment
Status: CLOSED NOTABUG
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: libvirt (Show other bugs)
7.0
x86_64 Linux
low Severity low
: rc
: ---
Assigned To: Peter Krempa
Virtualization Bugs
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-06-05 05:22 EDT by zhenfeng wang
Modified: 2013-07-10 11:36 EDT (History)
7 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-07-10 11:36:30 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
configure the tls environment (3.29 KB, text/plain)
2013-06-05 07:16 EDT, zhenfeng wang
no flags Details

  None (edit)
Description zhenfeng wang 2013-06-05 05:22:22 EDT
Description of problem:
Build tls enviroment from source to target and source to source ,then migrate the guest from target to source on the source host,usually,it will
report a proper error,however in the latest libvirt,it report an error with an extra input/output error

Version-Release number of selected component (if applicable):
kernel-3.10.0-0.rc2.57.el7.x86_64
libvirt-1.0.6-1.el7.x86_64
qemu-kvm-1.5.0-2.el7.x86_64

How reproducible:
100%

Steps
1. built the tls environment from the source to the target ,and the source to the source ,the details steps reference the attachment
server: target (target.redhat.com)
client: source (source.redhat.com)

2 prepare a running guest in the target
#virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     rhel72                         running

3. Conect to server(target) hypervisor from the client,it works well
virsh -c qemu+tls://target.redhat.com/system
Welcome to virsh, the virtualization interactive terminal.

Type:  'help' for help with commands
       'quit' to quit

virsh #list --all
 Id    Name                           State
----------------------------------------------------
 -     rhel72                         running

4.Connect the client(source) from the client ,it works well
virsh -c qemu+tls://source.redhat.com/system
Welcome to virsh, the virtualization interactive terminal.

virsh #list --all
 Id    Name                           State
----------------------------------------------------
 -     rhel73                         running

5.migrate the guest from target to source on the source host,excuted the following command in the source host
#  virsh -c qemu+tls://{target ip}/system migrate --p2p guest_name qemu+tls://{source ip}/system

usually ,it will report the following error before libvirt-1.0.6.1
error: operation failed: Failed to connect to remote libvirt URI qemu+tls://{source ip}/system

however there was an extra error info(Unable to read TLS confirmation: Input/output error)  in libvirt1.0.6.1
error: operation failed: Failed to connect to remote libvirt URI qemu+tls://source ip/system: Unable to read TLS confirmation: Input/output error

Actual results:
It reported an extra input/output error while migrated with the tls environment

Expected results:
should report a proper error
Comment 2 zhenfeng wang 2013-06-05 07:10:46 EDT
check the libvirt log on the source
2013-06-05 11:08:12.129+0000: 2880: info : libvirt version: 1.0.6, package: 1.el7 (Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>, 2013-06-03-10:07:01, x86-021.build.eng.bos.redhat.com)
2013-06-05 11:08:12.129+0000: 2880: error : virCommandWait:2351 : internal error Child process (/usr/sbin/iscsiadm --mode session) unexpected exit status 21
2013-06-05 11:09:04.083+0000: 2869: error : virNetTLSContextValidCertificate:967 : Unable to verify TLS peer: No certificate was found.
2013-06-05 11:09:04.083+0000: 2869: warning : virNetTLSContextCheckCertificate:1103 : Certificate check failed Unable to verify TLS peer: No certificate was found.
2013-06-05 11:09:04.083+0000: 2869: error : virNetTLSContextCheckCertificate:1106 : authentication failed: Failed to verify peer's certificate


check the libvirt log on the target 
2013-06-05 11:09:04.097+0000: 2830: info : libvirt version: 1.0.6, package: 1.el7 (Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>, 2013-06-03-10:07:01, x86-021.build.eng.bos.redhat.com)
2013-06-05 11:09:04.097+0000: 2830: error : virNetClientSetTLSSession:820 : Unable to read TLS confirmation: Input/output error
2013-06-05 11:09:04.097+0000: 2830: error : doPeer2PeerMigrate:3484 : operation failed: Failed to connect to remote libvirt URI qemu+tls://ibm-x3850x5-09.qe.lab.eng.nay.redhat.com/system: Unable to read TLS confirmation: Input/output error
Comment 3 zhenfeng wang 2013-06-05 07:16:02 EDT
Created attachment 757127 [details]
configure the tls environment
Comment 4 Peter Krempa 2013-07-10 11:36:30 EDT
This is actually a feature. The error message was enhanced to contain real connection failure reason by

commit 5751fc4f4efe25e6abb158fc86c61230303ce280
Author: Cole Robinson <crobinso@redhat.com>
Date:   Tue May 28 15:12:01 2013 -0400

    qemu: migration: Improve p2p error if we can't open conn
    
    By actually showing the Open() error to the user

diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
index 19b1236..9ac9be4 100644
--- a/src/qemu/qemu_migration.c
+++ b/src/qemu/qemu_migration.c
@@ -3472,7 +3472,8 @@ static int doPeer2PeerMigrate(virQEMUDriverPtr driver,
     qemuDomainObjExitRemote(vm);
     if (dconn == NULL) {
         virReportError(VIR_ERR_OPERATION_FAILED,
-                       _("Failed to connect to remote libvirt URI %s"), dconnuri);
+                       _("Failed to connect to remote libvirt URI %s: %s"),
+                       dconnuri, virGetLastErrorMessage());
         virObjectUnref(cfg);
         return -1;
     }

Closing as NOTABUG.

Note You need to log in before you can comment on or make changes to this bug.