
On 02/20/2012 06:43 PM, Laine Stump wrote:
On 02/20/2012 12:37 PM, Shradha Shah wrote:
Hello All,
I am currently working on patches for PCI-passthrough of SRIOV VF's and I am facing an issue with the network definition not being persistent.
I am using a new forward mode = hostdev and the network xml is as follows: <network> <name>pci-passthrough-network</name> <uuid>81ff0d90-c91e-6742-64da-4a736edb9a8f</uuid> <forward mode="hostdev"> <pf dev="eth2"/> </forward> </network>
Command line used is: # virsh net-define pci_passthrough_network.xml
The network is defined successfully and I can use it at this point.
But if I restart libvirt after defining the above network, I lose the network definition.
After restart libvirt does not possess any knowledge of the above network.
This does not happen when I use forward mode="bridge".
I have cross referenced the function call path of networkDefine for both the forwarding modes and I can't seem to find the problem.
Is there some function I am missing?
You need to add some logic to networkFindActiveConfigs() to determine if the network is active.
I am not sure if I am missing something but, networkFindActiveConfigs() is called by networkStartup() only. Currently I am not starting any networks but just defining them and then restarting libvirtd, at which point the pci-passthrough-network dissapears. The commands I am using are as follows: # virsh net-define pci_passthrough_network.xml Network pci-passthrough-network defined from pci_passthrough_network.xml # virsh net-define macvtap_bridge_network.xml Network macvtap-bridge-network defined from macvtap_bridge_network.xml # virsh net-list -all Name State Autostart -------------------------------------------------- macvtap-bridge-network inactive no pci-passthrough-network inactive no # service libvirtd restart Stopping libvirtd daemon: [ OK ] Starting libvirtd daemon: [ OK ] # virsh net-list -all Name State Autostart -------------------------------------------------- macvtap-bridge-network inactive no I think its got to do something with the persistent flag of the network object, but I am not sure. Thanks, Shradha
(actually this points out that networkFindActiveConfigs() doesn't have any code to determine if the macvtap network types are active. It turns out that there's really no effect to starting one of those types of network, but I should probably do *something* to allow a restarted libvirtd to determine if that type of network is started...)
-- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list