[libvirt] Question about networkNotifyActualDevice

Shradha Shah sshah at solarflare.com
Thu Aug 9 13:42:02 UTC 2012


Hello All,

I have recently found a bug in my patches to support forward mode="hostdev".

The bug is that libvirtd restart forgets about the netdef->forwardIfs.

Steps to reproduce:

1) virsh net-define hostdev.xml

<network>
  <name>hostdev</name>
  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a8f</uuid>
  <forward mode='hostdev' managed='yes'>
    <pf dev='eth4'/>
  </forward>
</network>
	
	
2) virsh define guest.xml
3) virsh start guest

[root at c6100m libvirt]# virsh net-dumpxml hostdev
<network>
  <name>hostdev</name>
  <uuid>81ff0d90-c91e-6742-64da-4a736edb9a8f</uuid>
  <forward managed='yes' mode='hostdev'>
    <pf dev='eth4'/>
    <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x2'/>
    <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x4'/>
    <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x6'/>
    <address type='pci' domain='0x0000' bus='0x04' slot='0x01' function='0x0'/>
    <address type='pci' domain='0x0000' bus='0x04' slot='0x01' function='0x2'/>
    <address type='pci' domain='0x0000' bus='0x04' slot='0x01' function='0x4'/>
    <address type='pci' domain='0x0000' bus='0x04' slot='0x01' function='0x6'/>
    <address type='pci' domain='0x0000' bus='0x04' slot='0x02' function='0x0'/>
  </forward>
</network>


4) service libvirtd restart

After libvirtd is restarted I observe that the guest is shutdown.

/var/log/libvirt/libvirtd.log complains with the following error message:
networkNotifyActualDevice:3299 : internal error network 'hostdev' doesn't have dev in use by domain.

Using gdb when I breakpoint on networkNotifyActualDevice on libvirtd start I observe that netdef->nForwardIfs has been reset to 0, but netdef->nForwardPfs is correctly assigned to 1.

So my question is does libvirtd restart cause the network to remember only the inactive XML and not the active XML?

Does anyone have any ideas on how I should proceed on this bug?

-- 
Many Thanks,
Regards,
Shradha Shah




More information about the libvir-list mailing list