Bug 623066

Summary: double interface element in guest xml when hotplug a network/disk interface with virt-manager
Product: Red Hat Enterprise Linux 6 Reporter: weizhang <weizhan>
Component: virt-managerAssignee: Cole Robinson <crobinso>
Status: CLOSED DUPLICATE QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: low    
Version: 6.0CC: dallan, dyuan, llim, mzhan, sputhenp, szhou, weizhan, xen-maint, yoyzhang
Target Milestone: rcKeywords: RHELNAK
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-11-29 19:31:51 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description weizhang 2010-08-11 08:47:59 UTC
Description of problem:
When add one network on guest hotplug with virt-manager, in the /etc/libvirt/qemu/guest.xml there will be two parts of network with same mac and source. But in the guest only one can be detected and used. If you hotunplug it and reboot the vm, the network device will appear again.

# cat /etc/libvirt/qemu/guest.xml
<domain type='kvm'>
  <name>cd-inst</name>
  <uuid>aaaa0000-bbbb-1111-cccc-2222dddd3333</uuid>
  <memory>2097152</memory>
  <currentMemory>2097152</currentMemory>
  <vcpu cpuset='2'>1</vcpu>
  <os>
    <type arch='x86_64' machine='rhel6.0.0'>hvm</type>
    <boot dev='hd'/>
  </os>
  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/libexec/qemu-kvm</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='none'/>
      <source file='/var/lib/libvirt/images/cd-inst.img'/>
      <target dev='hda' bus='ide'/>
      <address type='drive' controller='0' bus='0' unit='0'/>
    </disk>
    <disk type='block' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <target dev='hdc' bus='ide'/>
      <readonly/>
      <address type='drive' controller='0' bus='1' unit='0'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw'/>
      <source file='/var/lib/libvirt/images/rhel-x86_64.img'/>
      <target dev='hdb' bus='ide'/>
      <address type='drive' controller='0' bus='0' unit='1'/>
    </disk>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>

    <interface type='network'>
      <mac address='52:54:00:53:34:d8'/>
      <source network='default'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
    <interface type='network'>
      <mac address='52:54:00:53:34:d8'/>
      <source network='default'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
    </interface>

    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target port='0'/>
    </console>
    <input type='mouse' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes' keymap='en-us'/>
    <sound model='es1370'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </sound>
    <video>
      <model type='cirrus' vram='9216' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
</domain>



Version-Release number of selected component (if applicable):

virt-manager-0.8.4-7.el6.noarch
libvirt-0.8.1-21.el6.x86_64
kernel-2.6.32-61.el6.x86_64

How reproducible:
100%

Steps to Reproduce:
1.Launch virt-manager: #virt-manager
2.Double-click a vm and click the Run button in the Virtual Machine Details window.
3.Click the Hardware tab.
4.Click Add Hardware button
5.Select Network in Hardware type droplist and click Forward.
6.Select Vitual network, set fixed MAC,and select default in Device Model droplist, then click Forward button.
7.Click Finish button.
8.Select the NIC you just added then click Remove button.
9.Reboot the vm and check Hardware tab.
  
Actual results:
There is still one network device which is you just delete

Expected results:
There is no network device

Additional info:

Comment 2 RHEL Program Management 2010-08-11 09:18:37 UTC
This issue has been proposed when we are only considering blocker
issues in the current Red Hat Enterprise Linux release.

** If you would still like this issue considered for the current
release, ask your support representative to file as a blocker on
your behalf. Otherwise ask that it be considered for the next
Red Hat Enterprise Linux release. **

Comment 3 zhanghaiyan 2010-09-10 08:59:17 UTC
*** Bug 631665 has been marked as a duplicate of this bug. ***

Comment 5 Sadique Puthen 2010-10-03 15:11:54 UTC
*** Bug 639707 has been marked as a duplicate of this bug. ***

Comment 7 Cole Robinson 2010-11-29 19:31:51 UTC
This is really a side effect of libvirt's confusing hotplug semantics with state drivers like QEMU. There is already a libvirt bug tracking this issue, so duping to that.

*** This bug has been marked as a duplicate of bug 596100 ***

Comment 8 Cole Robinson 2011-03-10 15:10:10 UTC
*** Bug 683731 has been marked as a duplicate of this bug. ***