Bug 1119212

Summary: Generate the redundant record in guest's xml while configure the same listen address in guest's xm
Product: Red Hat Enterprise Linux 6 Reporter: zhenfeng wang <zhwang>
Component: libvirtAssignee: Erik Skultety <eskultet>
Status: CLOSED WONTFIX QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 6.6CC: dyuan, eskultet, jdenemar, mzhan, rbalakri, zpeng
Target Milestone: rcKeywords: Upstream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1119215 (view as bug list) Environment:
Last Closed: 2015-01-20 13:40:08 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: 1119215    

Description zhenfeng wang 2014-07-14 09:41:02 UTC
Description of problem:
Generate the redundant record in guest's xml while configure the same listen address in guest's xml

Version-Release number of selected component (if applicable):
kernel-2.6.32-466.el6.x86_64
qemu-kvm-rhev-0.12.1.2-2.426.el6.x86_64
libvirt-0.10.2-40.el6.x86_64

How reproducible:
100%

Steps to Reproduce:
1.Prepare a shutoff guest
# virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     rhel6                          shut off

2.Edit guest's xml, add multi same listen address in guest's xml, It will generate many redundant records
in guest's xml
#virsh edit rhel6
--
 <graphics type='vnc' port='-1' autoport='yes' listen='192.168.122.1' sharePolicy='ignore'>
      <listen type='address' address='192.168.122.1'/>
      <listen type='address' address='192.168.122.1'/>
      <listen type='address' address='127.0.0.1'/>
      <listen type='address' address='127.0.0.1'/>
      <listen type='address' address='1.1.1.1'/>
      <listen type='address' address='1.1.1.1'/>
    </graphics>


3.Save the guest's xml, then check the guest's xml
#virsh dumpxml rhel6
--
 <graphics type='vnc' port='-1' autoport='yes' listen='192.168.122.1' sharePolicy='ignore'>
      <listen type='address' address='192.168.122.1'/>
      <listen type='address' address='192.168.122.1'/>
      <listen type='address' address='127.0.0.1'/>
      <listen type='address' address='127.0.0.1'/>
      <listen type='address' address='1.1.1.1'/>
      <listen type='address' address='1.1.1.1'/>
    </graphics>


4.Start the guest
#virsh start rhel6

5.Connect the guest, only ip 192.168.122.1 works, other ip didn't work

Actual results:
Generate the redundant record in guest's xml while configure the same listen address in guest's xml

Expected results:
Should generate only 1 record while configure the same listen address in guest's xml

Comment 2 Erik Skultety 2014-08-18 13:01:37 UTC
Fixed upstream:

commit a282f5f79f02470d9178d7b981f6e82529cfd0c0
Author: Erik Skultety <eskultet>
Date:   Thu Aug 14 11:48:52 2014 +0200

qemu: Redundant listen address entry in quest xml
    
When editing guest's XML (on QEMU), it was possible to add multiple
listen elements into graphics parent element. However QEMU does not
support listening on multiple addresses. Configuration is tested for
multiple 'listen address' and if positive, an error is raised.

v1.2.7-141-ga282f5f