Bug 1225545

Summary: Node device not found in 'add hardware'
Product: [Fedora] Fedora Reporter: Dr. David Alan Gilbert <dgilbert>
Component: virt-managerAssignee: Cole Robinson <crobinso>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 22CC: berrange, crobinso, dgilbert, virt-maint
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: virt-manager-1.2.1-1.fc22 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-06-11 18:32:53 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:

Description Dr. David Alan Gilbert 2015-05-27 16:17:12 UTC
Description of problem:
I suspect this is related to other tasks creating network devices on the host running the VMs at the same time.

The VM hosts are running a virt-test (just the migrate) in the background, so frequently creating and destroying network interfaces;   doing:

virsh nodedev-list

repeatedly and diffing the results ends up with:
9c9
< net_t0_TzxgNk_16_ad_9c_f0_a6_d4
---
> net_t0_2SLgD1_96_45_e8_c7_15_ef

so perhaps virt-manager is listing a device that just disappeared; it should probably ignore missing network devices like that?

Version-Release number of selected component (if applicable):
virt-manager-1.2.0-1.fc22.noarch
virt-manager-common-1.2.0-1.fc22.noarch

on the host running the VMs
libvirt-1.2.8-16.el7.2.x86_64

How reproducible:
Hmm, well it was failing for a while

Steps to Reproduce:
1. open an existing VM
2. click the 'Add hardware' button

Actual results:

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/details.py", line 1433, in add_hardware
    self.addhw.show(self.topwin)
  File "/usr/share/virt-manager/virtManager/addhardware.py", line 126, in show
    self.reset_state()
  File "/usr/share/virt-manager/virtManager/addhardware.py", line 424, in reset_state
    self.netlist.reset_state()
  File "/usr/share/virt-manager/virtManager/netlist.py", line 405, in reset_state
    self._populate_network_list()
  File "/usr/share/virt-manager/virtManager/netlist.py", line 254, in _populate_network_list
    vnet_bridges)
  File "/usr/share/virt-manager/virtManager/netlist.py", line 185, in _find_physical_devices
    for nodedev in self.conn.filter_nodedevs("net"):
  File "/usr/share/virt-manager/virtManager/connection.py", line 599, in filter_nodedevs
    xmlobj = dev.get_xmlobj()
  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 337, in get_xmlobj
    self.ensure_latest_xml()
  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 290, in ensure_latest_xml
    self.__force_refresh_xml(nosignal=nosignal)
  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 305, in __force_refresh_xml
    active_xml = self._XMLDesc(self._active_xml_flags)
  File "/usr/share/virt-manager/virtManager/nodedev.py", line 40, in _XMLDesc
    return self._backend.XMLDesc(flags)
  File "/usr/lib64/python2.7/site-packages/libvirt.py", line 5086, in XMLDesc
    if ret is None: raise libvirtError ('virNodeDeviceGetXMLDesc() failed')
libvirtError: Node device not found
[Wed, 27 May 2015 15:54:48 virt-manager 11223] DEBUG (details:619) Showing VM details: <vmmDomain object at 0x7f13dc30ffa0 (virtManager+domain+vmmDomain at 0x22a00e0)>
[Wed, 27 May 2015 15:54:48 virt-manager 11223] DEBUG (engine:357) window counter incremented to 3
[Wed, 27 May 2015 15:54:51 virt-manager 11223] DEBUG (addhardware:125) Showing addhw
[Wed, 27 May 2015 15:54:52 virt-manager 11223] DEBUG (error:97) error dialog message:
summary=Error launching hardware dialogue: Node device not found
details=Error launching hardware dialogue: Node device not found

in the libvirt log I see:

debug : nodeDeviceLookupByName:230 : Node device not found

Expected results:


Additional info:

Comment 1 Cole Robinson 2015-05-27 16:24:29 UTC
Is that error just in the logs, or does it raise a dialog?

Comment 2 Dr. David Alan Gilbert 2015-05-27 16:25:27 UTC
(In reply to Cole Robinson from comment #1)
> Is that error just in the logs, or does it raise a dialog?

It raised a dialog and refused to open the Add Hardware dialog.

Comment 3 Cole Robinson 2015-06-06 18:21:38 UTC
Thanks, fixed upstream now:

commit 68908c2d81fec635c0aba1bf3d4d008a06aa289a
Author: Cole Robinson <crobinso>
Date:   Sat Jun 6 14:20:21 2015 -0400

    connection: Handle nodedevs disappearing in filter_nodedevs (bz 1225545)

Comment 4 Fedora Update System 2015-06-06 22:30:43 UTC
virt-manager-1.2.1-1.fc22 has been submitted as an update for Fedora 22.
https://admin.fedoraproject.org/updates/virt-manager-1.2.1-1.fc22

Comment 5 Fedora Update System 2015-06-09 15:20:02 UTC
Package virt-manager-1.2.1-1.fc22:
* should fix your issue,
* was pushed to the Fedora 22 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing virt-manager-1.2.1-1.fc22'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2015-9686/virt-manager-1.2.1-1.fc22
then log in and leave karma (feedback).

Comment 6 Fedora Update System 2015-06-11 18:32:53 UTC
virt-manager-1.2.1-1.fc22 has been pushed to the Fedora 22 stable repository.  If problems still persist, please make note of it in this bug report.