Wind River Support Network

HomeDefectsOVP-737
Fixed

OVP-737 : [libvirt] libvirtvm: Vm hotplugNic Hotplug failed

Created: Jul 25, 2013    Updated: Mar 11, 2016
Resolved Date: Oct 10, 2013
Found In Version: 5.0.1
Fix Version: 5.0.1.8
Severity: Severe
Applicable for: Wind River Linux 5
Component/s: Userspace

Description

Problem Description
======================
libvirtvm: Vm hotplugNic Hotplug failed
Thread-2798::ERROR::2013-07-23 06:36:08,804::libvirtvm::1552::vm.Vm::(hotplugNic) vmId=`a77f5d69-aad3-44bd-86e5-0dddb7feec09`::Hotplug failed

Ovirt enviroment info before starting the VM:
    1) The default datacenter is used, which is nfs storage type and status is 'Up'.
    2) The wr ovirt node is added and status is 'Up'
    3) The master storage domain is 'Up'
    4) The ISO_DOMAIN ISO/NFS is 'Up'

hotplugNic dialog box show error message "Error while executing action Edit VM Interface properties: Failed to activate VM Network Interface."

Expected Behavior
======================
Succeed to hotplugNic on VM

Observed Behavior
======================
None

Logs
======================
vdsm.log
---------------
Thread-2798::DEBUG::2013-07-23 06:36:08,323::BindingXMLRPC::908::vds::(wrapper) client [128.224.158.143]::call vmHotplugNic with ({'nic': {'nicModel': 'pv', 'macAddr': '00:1a:4a:e0:9e:bf', 'linkActive': 'true', 'network':
 'ovirtmgmt', 'filter': 'vdsm-no-mac-spoofing', 'specParams': {}, 'deviceId': '17360d75-bdcf-4244-b2e5-b26d9bed5a4e', 'address': {'bus': '0x00', ' slot': '0x06', ' domain': '0x0000', ' type': 'pci', ' function': '0x0'}, '
device': 'bridge', 'type': 'interface'}, 'vmId': 'a77f5d69-aad3-44bd-86e5-0dddb7feec09'},) {}
Thread-2798::DEBUG::2013-07-23 06:36:08,325::libvirtvm::1547::vm.Vm::(hotplugNic) vmId=`a77f5d69-aad3-44bd-86e5-0dddb7feec09`::Hotplug NIC xml: <interface type="bridge">
        <address  domain="0x0000"  function="0x0"  slot="0x06" type="pci" bus="0x00"/>
        <mac address="00:1a:4a:e0:9e:bf"/>
        <model type="virtio"/>
        <source bridge="ovirtmgmt"/>
        <filterref filter="vdsm-no-mac-spoofing"/>
        <link state="up"/>
</interface>

Thread-2798::ERROR::2013-07-23 06:36:08,804::libvirtvm::1552::vm.Vm::(hotplugNic) vmId=`a77f5d69-aad3-44bd-86e5-0dddb7feec09`::Hotplug failed
Traceback (most recent call last):
  File "/usr/share/vdsm/libvirtvm.py", line 1550, in hotplugNic
    self._dom.attachDevice(nicXml)
  File "/usr/share/vdsm/libvirtvm.py", line 541, in f
    ret = attr(*args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/vdsm/libvirtconnection.py", line 111, in wrapper
    ret = f(*args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/libvirt.py", line 413, in attachDevice
    if ret == -1: raise libvirtError ('virDomainAttachDevice() failed', dom=self)
libvirtError: An error occurred, but the cause is unknown
Thread-2798::DEBUG::2013-07-23 06:36:08,805::BindingXMLRPC::915::vds::(wrapper) return vmHotplugNic with {'status': {'message': 'An error occurred, but the cause is unknown', 'code': 49}}
VM Channels Listener::DEBUG::2013-07-23 06:36:09,212::vmChannels::104::vds::(_handle_unconnected) Trying to connect fileno 42.
VM Channels Listener::DEBUG::2013-07-23 06:36:09,212::guestIF::95::vm.Vm::(_connect) vmId=`a77f5d69-aad3-44bd-86e5-0dddb7feec09`::Attempting connection to /var/lib/libvirt/qemu/channels/nfs_vm1.com.redhat.rhevm.vdsm
VM Channels Listener::DEBUG::2013-07-23 06:36:10,213::vmChannels::104::vds::(_handle_unconnected) Trying to connect fileno 42.
VM Channels Listener::DEBUG::2013-07-23 06:36:10,214::guestIF::95::vm.Vm::(_connect) vmId=`a77f5d69-aad3-44bd-86e5-0dddb7feec09`::Attempting connection to /var/lib/libvirt/qemu/channels/nfs_vm1.com.redhat.rhevm.vdsm 


libvirtd.log
--------------
2013-07-23 07:23:13.462+0000: 2590: info : libvirt version: 1.0.3
2013-07-23 07:23:13.462+0000: 2590: warning : qemuDomainObjTaint:1276 : Domain id=2 name='nfs_vm1' uuid=a77f5d69-aad3-44bd-86e5-0dddb7feec09 is tainted: high-privileges
2013-07-23 07:27:08.769+0000: 2588: warning : qemuAgentNotifyEvent:1252 : Received unexpected event 3
2013-07-23 07:27:08.795+0000: 2588: warning : qemuAgentNotifyEvent:1252 : Received unexpected event 3
2013-07-23 07:29:45.729+0000: 2590: error : virNWFilterDHCPSnoopEnd:2131 : internal error ifname "vnet0" not in key map
2013-07-23 07:29:45.731+0000: 2590: error : virNetDevGetIndex:653 : Unable to get index for interface vnet0: No such device
2013-07-23 07:30:25.279+0000: 2592: error : qemuMonitorJSONCheckError:351 : internal error unable to execute QEMU command 'device_add': Duplicate ID 'net0' for device
2013-07-23 07:30:25.319+0000: 2592: error : virNWFilterDHCPSnoopEnd:2131 : internal error ifname "vnet0" not in key map
2013-07-23 07:30:25.321+0000: 2592: error : virNetDevGetIndex:653 : Unable to get index for interface vnet0: No such device
/var/log/libvirtd.log (END) 

Steps to Reproduce

step 1; configure --enable-board=intel-xeon-core --enable-rootfs=ovp-ovirt-node --enable-addons=wr-ovp --enable-parallel-pkgbuilds=5 --enable-jobs=5
step 2; make fs
step 3; boot target, and configure the ovirt node manually
    Add the ovirtmgmt bridge
    Start vdsm service
    etc.
step 4; login the ovirt engine (running on Fedora 18) Web UI
step 5; add the wr node to the default Local datacenter
step 6; Setup the master storage domain
step 7; Attach and activate the ISO_DOMAIN to the local datacenter
        Upload an ISO image to the ISO_DOMAIN, for example: x86-64-kvm-guest-ovp-guest-preempt-rt-dist.iso
step 8; Create a new VM form the Web UI
    In default datacenter and default cluster,
    Click on "VMs" --> choose "New Server"
    --> Input any name for VM, i.e. nfs_vm1
    --> Select console, protocol select 'VNC', due to the spice unsupported on OVP.
    --> Click on OK (keep others as default)
    --> Dialog will be poped out: New Virtual Machine -Guide Me
    --> Click on "Configure Virtual Disks" to get a new dialog named "New Virtual Disk"
    --> Input "10" for "Size(GB)" and click on OK
    --> Then the new VM is created with specified name
    --> Click on "Network Interfances" to new a network interface, named 'nci1', 'Network' select ovirtmgmt and 'Type' select 'Red Hat VirtIO'
    --> Right click on the new VM and choose "Run Once", get a new dialog
    --> Expend the "Boot options", enable "Attach CD" and choose the ISO image, make CD-ROM as the first boot device
    and click on OK.
    Step 9: Run the VM.
    Step 10: While the VM start up,  login VM via VNC service to check the network interface, there're exist, dhclent got IP address.

    Step 11: On oVirt-engine Web UI, select VM and Edit 'nic1', unplugged this network interface, click 'OK'.
    Step 12: Wait several minutes, select VM and Edit 'nic1', plugged this network interface, click 'OK'.

   Check the dialog box, error reported, 'Error while executing action Edit VM Interface properties: Failed to activate VM Network Interface'

   Check the vdsm.log libvirtd.log

Misc Info
======================
1) ssl is enabled.
2) oVirt-engine with ovirt-host-deploy-v2.patch 
Live chat
Online