Bug 667091

Summary: IB700 watchdog isn't PCI
Product: Red Hat Enterprise Linux 6 Reporter: Richard W.M. Jones <rjones>
Component: libvirtAssignee: Richard W.M. Jones <rjones>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: low    
Version: 6.1CC: crobinso, dallan, dyuan, eblake, mjenner, xen-maint, yimwang
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: libvirt-0.8.7-2.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 637131 Environment:
Last Closed: 2011-05-19 13:25:23 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 637131    
Bug Blocks: 634607    

Description Richard W.M. Jones 2011-01-04 11:58:25 UTC
+++ This bug was initially created as a clone of Bug #637131 +++

Description of problem:

When I add <watchdog model='ib700'/> to the XML of a domain, libvirtd
automatically expands it to the following:

  <watchdog model='ib700' action='reset'>
    <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> 
  </watchdog>

However, IB700 isn't a PCI device, so this looks incorrect to me ...

Version-Release number of selected component (if applicable):

libvirt-0.8.3-2.fc14.x86_64

How reproducible:

Always.

Steps to Reproduce:
1. Edit a VM's XML and add <watchdog model='ib700'/>
2. Dump the XML.
  
Actual results:

PCI <address> element has been added.

Expected results:

Shouldn't be added for IB700.

Additional info:

Note that the other type of watchdog, i6300esb, *is* a PCI
device.  Don't change that one!

--- Additional comment from rjones on 2010-09-24 08:05:55 EDT ---

Actually it's worse than that.  This stops you from using
IB700 at all via libvirt.  You get:

qemu-kvm: -device ib700,id=watchdog0,bus=pci.0,addr=0x5: Device 'ib700' can't go on a PCI bus

I wonder if this is a RHEL 6.0 bug / blocker?

Comment 1 Richard W.M. Jones 2011-01-11 13:40:10 UTC
Patch posted upstream:

https://www.redhat.com/archives/libvir-list/2011-January/msg00389.html

Comment 2 Richard W.M. Jones 2011-01-11 16:37:14 UTC
Patch pushed upstream:

http://libvirt.org/git/?p=libvirt.git;a=commitdiff;h=feddaf1dc8c14590d957ad353fc9263a80d96236

Comment 5 wangyimiao 2011-01-18 08:04:53 UTC
Verified it PASSED on build :
libvirt-0.8.7-2.el6.x86_64
qemu-kvm-0.12.1.2-2.129.el6.x86_64
qemu-img-0.12.1.2-2.129.el6.x86_64
kernel-2.6.32-94.el6.x86_64.

Steps:
1.Add that XML in the domain config XML.
.............................
 <watchdog model='ib700'/>
.............................

2.Check the domain XML have not add the PCI <address> element for watchdog device with "model='ib700'".

# virsh dumpxml http_test
..........................
    <watchdog model='ib700' action='reset'/>
...........................

3.Add that XML in the domain config XML.
.............................
   <watchdog model='i6300esb' action='reset'/>
.............................

4.Check the domain XML have add the PCI <address> element for watchdog device with "model='i6300esb'".

# virsh dumpxml http_test
..........................
   <watchdog model='i6300esb' action='reset'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </watchdog>
...........................

Comment 9 errata-xmlrpc 2011-05-19 13:25:23 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2011-0596.html