Bug 1451629

Summary: TCP tunnel network: the guest with interface type=client can not start
Product: Red Hat Enterprise Linux 7 Reporter: yalzhang <yalzhang>
Component: qemu-kvm-rhevAssignee: jason wang <jasowang>
Status: CLOSED ERRATA QA Contact: xiywang
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.4CC: ailan, berrange, chayang, jasowang, juzhang, knoel, michen, pezhang, qzhang, rbalakri, virt-bugs, virt-maint, xianwang, xiywang, yalzhang
Target Milestone: rcKeywords: Regression
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-rhev-2.9.0-10.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-08-02 04:38:29 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description yalzhang@redhat.com 2017-05-17 08:12:06 UTC
Description of problem:
The guest with <interface type='client'> can not start.

Version-Release number of selected component (if applicable):
libvirt-3.2.0-5.el7.x86_64
qemu-kvm-rhev-2.9.0-5.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1. modify the guest's xml to be with below interface xml:
# virsh edit rhel7.4
....
   <interface type='client'>
      <source address='127.0.0.1' port='5558'/>
    </interface>
.....

# virsh dumpxml rhel7.4 | grep /interface -B5
    <interface type='client'>
      <mac address='52:54:00:aa:89:43'/>
      <source address='127.0.0.1' port='5558'/>
      <model type='rtl8139'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

2. # virsh start rhel7.4
error: Failed to start domain rhel7.4
error: internal error: qemu unexpectedly closed the monitor: 2017-05-17T07:31:57.652002Z qemu-kvm: -chardev pty,id=charserial0: char device redirected to /dev/pts/5 (label charserial0)
2017-05-17T07:31:57.688051Z qemu-kvm: -device rtl8139,netdev=hostnet0,id=net0,mac=52:54:00:aa:89:43,bus=pci.0,addr=0x3: Property 'rtl8139.netdev' can't find value 'hostnet0'

3.
# cat  /var/log/libvirt/libvirtd.log  | grep error
2017-05-17 07:33:35.127+0000: 8444: error : qemuMonitorIORead:588 : Unable to read from monitor: Connection reset by peer
2017-05-17 07:33:35.127+0000: 8444: error : qemuProcessReportLogError:1845 : internal error: qemu unexpectedly closed the monitor: 2017-05-17T07:33:35.081189Z qemu-kvm: -chardev pty,id=charserial0: char device redirected to /dev/pts/5 (label charserial0)
2017-05-17 07:33:35.127+0000: 8444: debug : qemuMonitorIO:745 : Error on monitor internal error: qemu unexpectedly closed the monitor: 2017-05-17T07:33:35.081189Z qemu-kvm: -chardev pty,id=charserial0: char device redirected to /dev/pts/5 (label charserial0)
2017-05-17 07:33:35.127+0000: 8444: debug : qemuMonitorIO:776 : Triggering error callback
2017-05-17 07:33:35.127+0000: 8444: debug : qemuProcessHandleMonitorError:341 : Received error on 0x7f43c82db000 'rhel7.4'
2017-05-17 07:33:35.127+0000: 8444: debug : qemuMonitorIO:745 : Error on monitor internal error: qemu unexpectedly closed the monitor: 2017-05-17T07:33:35.081189Z qemu-kvm: -chardev pty,id=charserial0: char device redirected to /dev/pts/5 (label charserial0)
2017-05-17 07:33:35.128+0000: 8448: debug : qemuMonitorSend:1046 : Send command resulted in error internal error: qemu unexpectedly closed the monitor: 2017-05-17T07:33:35.081189Z qemu-kvm: -chardev pty,id=charserial0: char device redirected to /dev/pts/5 (label charserial0)
2017-05-17 07:33:35.328+0000: 8448: error : qemuProcessReportLogError:1845 : internal error: process exited while connecting to monitor: 2017-05-17T07:33:35.081189Z qemu-kvm: -chardev pty,id=charserial0: char device redirected to /dev/pts/5 (label charserial0)
2017-05-17 07:33:35.332+0000: 8448: info : virDBusCall:1558 : DBUS_METHOD_ERROR: 'org.freedesktop.machine1.Manager.TerminateMachine' on '/org/freedesktop/machine1' at 'org.freedesktop.machine1' error org.freedesktop.machine1.NoSuchMachine: No machine 'qemu-1-rhel7.4' known


Actual results:
The guest with <interface type='client'> can not start, but the one with <interface type='server'> can start successfully.

Expected results:
The guest can start successfully and they can communicate with each other, and the qemu command line will be like this:
-netdev socket,listen=127.0.0.1:5558,id=hostnet0   .....------> the server
-netdev socket,connect=127.0.0.1:5558,id=hostnet0  .....-----------> the client

Additional info:
N/A

Comment 2 Daniel Berrangé 2017-05-17 08:22:59 UTC
This is a regression introduced in QEMU 2.9.0. The fix is posted here, but not yet merged upstream:

https://lists.gnu.org/archive/html/qemu-devel/2017-05/msg01348.html

Comment 4 jason wang 2017-06-01 06:51:13 UTC
Fix has been merged, please retest with latest version. If it was solved, please close as current release.

Thanks

Comment 5 jason wang 2017-06-01 06:53:22 UTC
*** Bug 1445164 has been marked as a duplicate of this bug. ***

Comment 6 yalzhang@redhat.com 2017-06-05 03:04:00 UTC
Hi Jason, I have tested on qemu-kvm-rhev-2.9.0-7.el7.x86_64, still fail. Please help to confirm which version did you merge the patch to?

Comment 8 jason wang 2017-06-05 09:21:53 UTC
(In reply to yalzhang from comment #6)
> Hi Jason, I have tested on qemu-kvm-rhev-2.9.0-7.el7.x86_64, still fail.
> Please help to confirm which version did you merge the patch to?

My bad, there's a similar commit which confuses me. I've just queue the patch upstream. Sorry.

Thanks

Comment 9 jason wang 2017-06-07 03:35:01 UTC
Pull request sent to Peter, should be merged in one or two days.

Comment 14 Miroslav Rezanina 2017-06-13 16:34:43 UTC
Fix included in qemu-kvm-rhev-2.9.0-10.el7

Comment 16 xiywang 2017-06-20 03:39:38 UTC
Verified on qemu-kvm-rhev-2.9.0-10.el7.x86_64

/usr/libexec/qemu-kvm -device virtio-net-pci,netdev=test,mac=9a:29:cd:3e:51:a1 -netdev socket,id=test,connect=:12233
VNC server running on ::1:5900

run succesfully

Comment 18 errata-xmlrpc 2017-08-02 04:38:29 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2017:2392