Bug 1238981

Summary: An error message box pops up continuously when opening hardware details window until close it.
Product: Red Hat Enterprise Linux 7 Reporter: Xiaodai Wang <xiaodwan>
Component: virt-managerAssignee: Pavel Hrdina <phrdina>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.2CC: juzhou, mzhan, qxiao, tzheng, xiaodwan
Target Milestone: rcKeywords: Regression
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard:
Fixed In Version: virt-manager-1.2.1-5.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-11-19 05:31:35 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:
Attachments:
Description Flags
virt-manager debug log none

Description Xiaodai Wang 2015-07-03 07:58:20 UTC
Description of problem:
An error message box pops up continuously when opening hardware details window until close it.

Version-Release number of selected component (if applicable):
virt-manager-1.2.1-2.el7.noarch

How reproducible:
100%

Steps to Reproduce:
1.Launch virt-manager
2.Connect to a remote xen host
("File ->Add Connection ->Choose Xen for Hypervisor -> Click "connect to
remote host"--> choose 'SSH' --> Input the hostname (eg:10.66.106.64)-->Click
'Connect'")
3.Select a running guest, double click guest and open hardware details window.

Actual result:
Message box "Error refreshing hardware page: Argument 1 does not allow None as a value" always pops up and cannot stop until close the hardware details window.

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/details.py", line 1189, in hw_selected
    self.refresh_overview_page()
  File "/usr/share/virt-manager/virtManager/details.py", line 2465, in refresh_overview_page
    self.widget("machine-type-label").set_text(machtype)
  File "/usr/lib64/python2.7/site-packages/gi/types.py", line 113, in function
    return info.invoke(*args, **kwargs)
TypeError: Argument 1 does not allow None as a value

Expected result:
The hardware details window should display normally and no error message box pops up.

Additional information:
1. If you select a shutting down guest, start it first, and then open hardware details window, it can also be reproduced.
2. If you select a shutting down guest, Open the hardware details window first when it's in shutdown status, and then start the guest, open hardware details window again, it cannot be reproduced.
3. The issue cannot be reproduced with virt-manager-1.1.0-12.el7.noarch.rpm.

Comment 4 Pavel Hrdina 2015-07-21 13:44:43 UTC
Hi, I've tried to reproduce this bug but without any luck.  Could you please provide also a debug log?  Thanks.

Comment 5 Xiaodai Wang 2015-07-22 02:23:52 UTC
Created attachment 1054577 [details]
virt-manager debug log

Comment 6 Pavel Hrdina 2015-07-23 12:47:56 UTC
Hi, could you please also provide the domain XML? Thanks.

Comment 7 Xiaodai Wang 2015-07-27 03:05:01 UTC
(In reply to Pavel Hrdina from comment #6)
> Hi, could you please also provide the domain XML? Thanks.

Please see below info, thanks!

<domain type='xen' id='39'>
  <name>rhel7-test1</name>
  <uuid>7a2cff43-2b33-2b2b-00c2-ac7effd40b97</uuid>
  <memory>524288</memory>
  <currentMemory>524288</currentMemory>
  <vcpu>1</vcpu>
  <os>
    <type>hvm</type>
    <loader>/usr/lib/xen/boot/hvmloader</loader>
    <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/lib64/xen/bin/qemu-dm</emulator>
    <disk type='file' device='disk'>
      <driver name='file'/>
      <source file='/var/lib/xen/images/rhel7-test1.img'/>
      <target dev='hda' bus='ide'/>
    </disk>
    <disk type='file' device='cdrom'>
      <target dev='hdc' bus='ide'/>
      <readonly/>
    </disk>
    <interface type='bridge'>
      <mac address='00:16:3e:0a:e7:3a'/>
      <source bridge='xenbr0'/>
      <script path='vif-bridge'/>
      <target dev='vif39.0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/2'/>
      <target port='0'/>
    </serial>
    <console type='pty' tty='/dev/pts/2'>
      <source path='/dev/pts/2'/>
      <target port='0'/>
    </console>
    <input type='mouse' bus='ps2'/>
    <graphics type='vnc' port='5939' autoport='yes' keymap='en-us'/>
  </devices>
</domain>

Comment 8 Pavel Hrdina 2015-07-29 14:29:58 UTC
I still cannot reproduce this bug.  Could you please provide exact steps how to reproduce this bug including how to setup your test environment.  Thanks.

Comment 10 Pavel Hrdina 2015-07-31 12:31:04 UTC
Upstream patch proposed:

https://www.redhat.com/archives/virt-tools-list/2015-July/msg00141.html

Comment 11 Pavel Hrdina 2015-08-05 11:40:35 UTC
Upstream commit:

commit f81358b02d58b709529a35268cbaf8ce098d803a
Author: Pavel Hrdina <phrdina>
Date:   Fri Jul 31 14:28:00 2015 +0200

    details: don't display error if machine is missing in XML
    
    Commint 0ddec919 updated the details page.  Now the detail page of
    existing domain cannot update the 'machine' value, only prints that
    value.  If we cannot get the machine from domain XML, don't pass a None,
    but "Unknown" instead.  This can happen if you are connecting with
    virt-manager to really old libvirt, the machine value is present in
    domain XML since libvirt v0.9.5.
    
    Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1238981
    
    Signed-off-by: Pavel Hrdina <phrdina>

Comment 14 XiaoQing 2015-08-12 08:32:12 UTC
Bug 1238981
I can reproduce the bug with the build:
virt-install-1.2.1-2.el7.noarch


Try to verify this bug with package:
virt-install-1.2.1-5.el7.noarch

steps:
1.Launch virt-manager

2.Connect to a remote xen host
("File ->Add Connection ->Choose Xen for Hypervisor -> Click "connect to
remote host"--> choose 'SSH' --> Input the hostname (eg:10.66.106.64)-->Click
'Connect'")

3.Select a running guest, double click guest and open hardware details window.

4.Select a shutdown guest , double click the guest ,run it  , and open hardware details window

Result:
After step 3:
No error info pops up. Could check the hardware details window of the guest. 

After step 4:
No error info pops up. Could check the hardware details window of the guest. 

According to above result,move this bug from ON_QA to VERIFIED.

Comment 16 errata-xmlrpc 2015-11-19 05:31:35 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2015-2206.html