Bug 1081881
Summary: | Fail to start guest with 2 displays mixed with port allocated automatically and fixed port. | |||
---|---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | zhengqin <zsong> | |
Component: | libvirt | Assignee: | Giuseppe Scrivano <gscrivan> | |
Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> | |
Severity: | medium | Docs Contact: | ||
Priority: | medium | |||
Version: | 7.0 | CC: | codong, dyuan, gscrivan, lhuang, mzhan, rbalakri, tzheng, xuzhang | |
Target Milestone: | rc | Keywords: | Upstream | |
Target Release: | --- | |||
Hardware: | x86_64 | |||
OS: | Linux | |||
Whiteboard: | ||||
Fixed In Version: | libvirt-1.2.7-1.el7 | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | ||
Clone Of: | ||||
: | 1081882 (view as bug list) | Environment: | ||
Last Closed: | 2015-03-05 07:33:24 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: | ||||
Bug Depends On: | ||||
Bug Blocks: | 1081882 |
Description
zhengqin
2014-03-28 06:46:25 UTC
it looks like a problem in libvirt, I've sent some patches upstream: http://www.redhat.com/archives/libvir-list/2014-June/msg01084.html Fixed upstream with: commit 1a065caa79bb4e42178a9e431ddbe5550a1c0596 Author: Giuseppe Scrivano <gscrivan> Date: Tue Jun 24 13:34:18 2014 +0200 graphics: remember graphics not auto allocated ports When looking for a port to allocate, the port allocator didn't take in consideration ports that are statically set by the user. Defining these two graphics elements in the XML would cause an error, as the port allocator would try to use the same port for the spice graphics element: <graphics type='spice' autoport='yes'/> <graphics type='vnc' port='5900' autoport='no'/> The new *[pP]ortReserved variables keep track of the ports that were successfully tracked as used by the port allocator but that weren't bound. Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1081881 Signed-off-by: Giuseppe Scrivano <gscrivan> commit 1d8d2fbcd09b26541db580f456e6a873869b0abe Author: Giuseppe Scrivano <gscrivan> Date: Tue Jun 24 13:34:17 2014 +0200 virtportallocator: new function "virPortAllocatorSetUsed" virPortAllocatorSetUsed permits to set a port as already used and prevent the port allocator to use it without any attempt to bind it. Signed-off-by: Giuseppe Scrivano <gscrivan> Signed-off-by: Michal Privoznik <mprivozn> I can reproduce this issue with libvirt-1.1.1-29.el7.x86_64: # virsh dumpxml etsd <graphics type='spice' port='5900' autoport='no' listen='127.0.0.1'> <listen type='address' address='127.0.0.1'/> </graphics> <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'> <listen type='address' address='127.0.0.1'/> </graphics> # virsh start etsd error: Failed to start domain etsd error: internal error: process exited while connecting to monitor: qemu-kvm: Failed to start VNC server on `127.0.0.1:0': Failed to bind socket: Address already in use And use virt-manager can get the same result. Verify with libvirt-1.2.8-7.el7.x86_64 : # virsh dumpxml etsd <graphics type='spice' port='5900' autoport='no' listen='127.0.0.1'> <listen type='address' address='127.0.0.1'/> </graphics> <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'> <listen type='address' address='127.0.0.1'/> </graphics> # virsh start etsd Domain etsd started 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://rhn.redhat.com/errata/RHSA-2015-0323.html |