Bug 802032 - Default CPU models are not available when launched with -nodefconfig
Default CPU models are not available when launched with -nodefconfig
Status: CLOSED CURRENTRELEASE
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: qemu-kvm (Show other bugs)
7.0
Unspecified Unspecified
unspecified Severity high
: rc
: ---
Assigned To: Eduardo Habkost
Virtualization Bugs
: Regression
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-03-10 07:39 EST by Daniel Berrange
Modified: 2014-06-17 23:15 EDT (History)
4 users (show)

See Also:
Fixed In Version: qemu-1.3.0
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2014-06-13 06:39:53 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Daniel Berrange 2012-03-10 07:39:13 EST
Description of problem:
When using -nodefconfig no CPU models are available

  http://lists.nongnu.org/archive/html/qemu-devel/2012-03/msg01600.html

This is because the RHEL-6 patch for this was never sent upstream :-(

  kvm-Move-CPU-definitions-to-usr-share-.-BZ-610805.patch
  kvm-Bug-625333-qemu-treatment-of-nodefconfig-and-readcon.patch

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

How reproducible:
Always

Steps to Reproduce:
1. qemu -nodefconfig -nodefaults -cpu ?
2.
3.
  
Actual results:
x86           [n270]
x86         [athlon]
x86       [pentium3]
x86       [pentium2]
x86        [pentium]
x86            [486]
x86        [coreduo]
x86          [kvm32]
x86         [qemu32]
x86          [kvm64]
x86       [core2duo]
x86         [phenom]
x86         [qemu64]


Expected results:
x86       Opteron_G3
x86       Opteron_G2
x86       Opteron_G1
x86          Nehalem
x86           Penryn
x86           Conroe
x86           [n270]
x86         [athlon]
x86       [pentium3]
x86       [pentium2]
x86        [pentium]
x86            [486]
x86        [coreduo]
x86          [kvm32]
x86         [qemu32]
x86          [kvm64]
x86       [core2duo]
x86         [phenom]
x86         [qemu64]


Additional info:
Comment 1 Eduardo Habkost 2012-03-12 11:22:34 EDT
For reference, this is the current upstream discussion about this:
http://article.gmane.org/gmane.comp.emulators.qemu/140321
Comment 3 Eduardo Habkost 2012-03-13 11:04:18 EDT
Update: after discussion upstream, the final solution will involve a change in semantics in relation to RHEL6. It should be like this:

- CPU models will be moved to some place like /usr/share/cpu-models-x86.conf
- To reuse Qemu models, or machine-types, and not define everything from
  scratch, libvirt will have to use something like:
  "-nodefconfig -readconfig /usr/share/qemu/cpu-models-x86.conf"

I want to make some probing mechanism that allows libvirt to easily find the default config file paths, instead of hardcoding the /usr/share path, but I don't know if I will be able to convince upstream maintainers to accept it.

Message on qemu-devel:
http://article.gmane.org/gmane.comp.emulators.qemu/141118
Comment 6 Eduardo Habkost 2013-05-14 13:35:10 EDT
All CPU models are now builtin inside QEMU source code since QEMU 1.3.0.
Comment 7 juzhang 2013-11-01 04:11:08 EDT
Verified by using qemu-kvm-1.5.3-10.el7.x86_64.


#/usr/libexec/qemu-kvm -nodefconfig -nodefaults -cpu ?
x86           qemu64  QEMU Virtual CPU version 1.5.3                  
x86           phenom  AMD Phenom(tm) 9550 Quad-Core Processor         
x86         core2duo  Intel(R) Core(TM)2 Duo CPU     T7700  @ 2.40GHz 
x86            kvm64  Common KVM processor                            
x86           qemu32  QEMU Virtual CPU version 1.5.3                  
x86            kvm32  Common 32-bit KVM processor                     
x86          coreduo  Genuine Intel(R) CPU           T2600  @ 2.16GHz 
x86              486                                                  
x86          pentium                                                  
x86         pentium2                                                  
x86         pentium3                                                  
x86           athlon  QEMU Virtual CPU version 1.5.3                  
x86             n270  Intel(R) Atom(TM) CPU N270   @ 1.60GHz          
x86      cpu64-rhel6  QEMU Virtual CPU version (cpu64-rhel6)          
x86           Conroe  Intel Celeron_4x0 (Conroe/Merom Class Core 2)   
x86           Penryn  Intel Core 2 Duo P9xxx (Penryn Class Core 2)    
x86          Nehalem  Intel Core i7 9xx (Nehalem Class Core i7)       
x86         Westmere  Westmere E56xx/L56xx/X56xx (Nehalem-C)          
x86      SandyBridge  Intel Xeon E312xx (Sandy Bridge)                
x86          Haswell  Intel Core Processor (Haswell)                  
x86       Opteron_G1  AMD Opteron 240 (Gen 1 Class Opteron)           
x86       Opteron_G2  AMD Opteron 22xx (Gen 2 Class Opteron)          
x86       Opteron_G3  AMD Opteron 23xx (Gen 3 Class Opteron)          
x86       Opteron_G4  AMD Opteron 62xx class CPU                      
x86       Opteron_G5  AMD Opteron 63xx class CPU                      
x86             host  KVM processor with all supported host features (only available in KVM mode)

Recognized CPUID flags:
  pbe ia64 tm ht ss sse2 sse fxsr mmx acpi ds clflush pn pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de vme fpu
  hypervisor rdrand f16c avx osxsave xsave aes tsc-deadline popcnt movbe x2apic sse4.2|sse4_2 sse4.1|sse4_1 dca pcid pdcm xtpr cx16 fma cid ssse3 tm2 est smx vmx ds_cpl monitor dtes64 pclmulqdq|pclmuldq pni|sse3
  smap adx rdseed rtm invpcid erms bmi2 smep avx2 hle bmi1 fsgsbase
  3dnow 3dnowext lm|i64 rdtscp pdpe1gb fxsr_opt|ffxsr mmxext nx|xd syscall
  perfctr_nb perfctr_core topoext tbm nodeid_msr tce fma4 lwp wdt skinit xop ibs osvw 3dnowprefetch misalignsse sse4a abm cr8legacy extapic svm cmp_legacy lahf_lm
  pmm-en pmm phe-en phe ace2-en ace2 xcrypt-en xcrypt xstore-en xstore
  kvm_pv_unhalt kvm_pv_eoi kvm_steal_time kvm_asyncpf kvmclock kvm_mmu kvm_nopiodelay kvmclock
  pfthreshold pause_filter decodeassists flushbyasid vmcb_clean tsc_scale nrip_save svm_lock lbrv npt
Comment 8 juzhang 2013-11-01 04:12:40 EDT
According to comment7, set this issue as verified.
Comment 9 Ludek Smid 2014-06-13 06:39:53 EDT
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.

Note You need to log in before you can comment on or make changes to this bug.