Bug 867764

Summary: default machine type is detected incorrectly
Product: Red Hat Enterprise Linux 6 Reporter: Jiri Denemark <jdenemar>
Component: libvirtAssignee: Jiri Denemark <jdenemar>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: low    
Version: 6.4CC: acathrow, bili, dyasny, dyuan, mzhan, rwu, tzheng, zhpeng
Target Milestone: rcKeywords: Regression
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: libvirt-0.10.2-5.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-02-21 07:10: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:

Description Jiri Denemark 2012-10-18 09:05:41 UTC
Description of problem:

libvirt fails to detect which machine type is the default one (the one that will be used if domain doesn't specify any machine type).

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

libvirt-0.10.2-4.el6

How reproducible:

100%

Steps to Reproduce:
1. virsh capabilities
  
Actual results:

The guest elements in capabilities XML would contain

      <emulator>/usr/libexec/qemu-kvm</emulator>
      <machine>rhel5.4.0</machine>
      <machine canonical='rhel6.4.0'>pc</machine>
      <machine>rhel6.4.0</machine>
      <machine>rhel6.3.0</machine>
      <machine>rhel6.2.0</machine>
      <machine>rhel6.1.0</machine>
      <machine>rhel6.0.0</machine>
      <machine>rhel5.5.0</machine>
      <machine>rhel5.4.4</machine>


Expected results:

      <emulator>/usr/libexec/qemu-kvm</emulator>
      <machine>rhel6.4.0</machine>
      <machine canonical='rhel6.4.0'>pc</machine>
      <machine>rhel6.3.0</machine>
      <machine>rhel6.2.0</machine>
      <machine>rhel6.1.0</machine>
      <machine>rhel6.0.0</machine>
      <machine>rhel5.5.0</machine>
      <machine>rhel5.4.4</machine>
      <machine>rhel5.4.0</machine>

The default machine type is the first machine element and it should be rhel6.4.0 (when tested with qemu-kvm from 6.4, rhel6.3.0 if latest released qemu-kvm is used).

Additional info:

Fixed upstream by v0.10.2-193-g1916679:

commit 19166795066a375b7a6f98f15dfc2271e0e549f1
Author: Viktor Mihajlovski <mihajlov.ibm.com>
Date:   Wed Oct 17 16:48:42 2012 +0200

    qemu: Fixed default machine detection in qemuCapsParseMachineTypesStr
    
    The machine in the last output line of <qemu-binary> -M ?
    was always reported as default machine even if this wasn't the
    actual default. Trivial fix.
    
    Signed-off-by: Viktor Mihajlovski <mihajlov.ibm.com>

Comment 1 Jiri Denemark 2012-10-18 09:14:12 UTC
Backport sent for review: http://post-office.corp.redhat.com/archives/rhvirt-patches/2012-October/msg00937.html

Comment 3 Jiri Denemark 2012-10-18 09:24:14 UTC
*** Bug 867374 has been marked as a duplicate of this bug. ***

Comment 5 zhpeng 2012-10-24 06:03:46 UTC
Test with libvirt-0.10.2-5.el6.x86_64

# virsh capabilities
...
  <guest>
    <os_type>hvm</os_type>
    <arch name='x86_64'>
      <wordsize>64</wordsize>
      <emulator>/usr/libexec/qemu-kvm</emulator>
      <machine>rhel6.4.0</machine>
      <machine canonical='rhel6.4.0'>pc</machine>
      <machine>rhel6.3.0</machine>
      <machine>rhel6.2.0</machine>
      <machine>rhel6.1.0</machine>
      <machine>rhel6.0.0</machine>
      <machine>rhel5.5.0</machine>
      <machine>rhel5.4.4</machine>
      <machine>rhel5.4.0</machine>
...

So it's verified.

Comment 6 errata-xmlrpc 2013-02-21 07:10: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.

http://rhn.redhat.com/errata/RHSA-2013-0276.html