Re: KVM entry failed, hardware error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 06/03/2012 03:18 PM, Johannes Bauer wrote:
> Hi list,
> 
> when trying to install Windows7 in a qemu-kvm 1.0.1 installation on
> Gentoo on my host running

Is that a 32-bit or 64-bit Windows 7?

> 
> Linux joequad 3.3.7 #1 SMP PREEMPT Sun Jun 3 12:05:59 CEST 2012 x86_64
> Intel(R) Core(TM)2 Quad CPU Q9550 @ 2.83GHz GenuineIntel GNU/Linux
> 
> with a host CPU of
> 
> processor	: 0
> vendor_id	: GenuineIntel
> cpu family	: 6
> model		: 23
> model name	: Intel(R) Core(TM)2 Quad CPU    Q9550  @ 2.83GHz
> stepping	: 10
> microcode	: 0xa07
> cpu MHz		: 2003.000
> cache size	: 6144 KB
> physical id	: 0
> siblings	: 4
> core id		: 0
> cpu cores	: 4
> apicid		: 0
> initial apicid	: 0
> fpu		: yes
> fpu_exception	: yes
> cpuid level	: 13
> wp		: yes
> flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
> pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm
> constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni dtes64
> monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm
> dts tpr_shadow vnmi flexpriority
> bogomips	: 5680.90
> clflush size	: 64
> cache_alignment	: 64
> address sizes	: 36 bits physical, 48 bits virtual
> power management:
> 
> the installation first works fine but upon first reboot qemu terminates
> with:
> 
> KVM: entry failed, hardware error 0x80000021
> 
> If you're runnning a guest on an Intel machine without unrestricted mode
> support, the failure can be most likely due to the guest entering an invalid
> state for Intel VT. For example, the guest maybe running in big real mode
> which is not supported on less recent Intel processors.
> 
> EAX=00000010 EBX=00000080 ECX=00000000 EDX=00000080
> ESI=0025da4a EDI=0007da4a EBP=00001f20 ESP=00000200
> EIP=0000009b EFL=00000002 [-------] CPL=3 II=0 A20=1 SMM=0 HLT=0
> ES =0020 00000200 0000ffff 00009300
> CS =b000 002b0000 0000ffff 0000f300

Pre-unrestricted mode hosts require cs.selector (first number) * 16 ==
cs.base (second number).  This clearly isn't the case here.

> Since the instruction clears PE of %cr0, I'm pretty sure it's trying to
> enter real mode again (for a very brief period no doubt) before firing
> up the OS. Since I believe my CPU is too old and does not support
> "Unrestricted Guest", this causes qemu to barf.
> 
> Is this assessment correct? Is there some way of getting qemu to switch
> to "soft" emulation in real mode and to use KVM in protected mode?

# rmmod kvm_intel
# modprobe kvm_intel emulate_invalid_guest_state=1

Warning: experimental code.

> Or is
> it impossible to run Windows 7 with kvm on a Core Quad (which possibly
> doesn't support "Unrestricted Guest")?

It should be possible.  Did you do anything special with the guest
(install any software?) before rebooting?  Is this repeatable?

> For reference, there's at least one more person having an identical
> problem (I've also posted in that thread):
> http://forums.gentoo.org/viewtopic-p-7054198.html

Same cs.sel/cs.base as your report.

> To find out if my CPU really does not suport "Unrestricted Guest" I've
> also posted http://software.intel.com/en-us/forums/showthread.php?t=105687

You can run vmxcap [1] and see.


[1]
http://git.qemu.org/?p=qemu.git;a=blob_plain;f=scripts/kvm/vmxcap;hb=HEAD


-- 
error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux