Bug 21402

Summary: [KVM] Noacpi Windows guest can not boot up on 32bit KVM host
Product: Virtualization Reporter: xudong (xudong.hao)
Component: kvmAssignee: Avi Kivity (avi)
Status: CLOSED CODE_FIX    
Severity: normal CC: avi, florian, mtosatti, rjw
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.36-rc3 Subsystem:
Regression: Yes Bisected commit-id:
Bug Depends on:    
Bug Blocks: 16444    

Description xudong 2010-10-29 03:01:32 UTC
Host OS: ia32pae
Guest OS: ia32pae
Guest OS Type (Linux/Windows): Windows xp/2000/2003 (no acpi)
kvm.git Commit: ce3d55e0d36be8f3e3b5a593d0e0b1c476701d82
qemu-kvm Commit:2f48918f8aaedcd6ab2b637f63927077973a54c7
Host Kernel Version: 2.6.36-rc3
Hardware: Westmere-WP and Sandybridge


Bug detailed description:
--------------------------
On IA32PAE KVM host system, Windows guest can not boot up without apci on(include Windows xp, 2000, 2003)
This is a regression issue 


Uing currectly kvm, I changed qemu-kvm to a old commit 945b6fa1a023e6eb858489bd58e7d786fdc53a32, this issue can be reproduced too.
Comment 1 xudong 2010-11-16 01:23:50 UTC
On IA32E KVM host, both acpi and Noacpi Windows guest can boot up normally.
Comment 2 Avi Kivity 2010-12-06 11:50:33 UTC
Is there a known working kernel commit?
Comment 3 xudong 2010-12-07 06:52:48 UTC
(In reply to comment #2)
> Is there a known working kernel commit?

As I know, kvm commit 488ba6955d2a1d87a8addefe7193ec86527fe796(Sep.2010) worked fine.
Comment 4 Avi Kivity 2010-12-28 14:40:32 UTC
Does not reproduce with kvm.git c093b8b46c5f0dd12d799f0d6a3b579863df72f6
Comment 5 Avi Kivity 2010-12-28 15:22:14 UTC
Cannot reproduce with ce3d55e0d36be8f3e3b5a593d0e0b1c476701d82.

Any special way to reproduce it? What's the qemu command line?

Is it an ordinary boot or an install?

At what stage does it fail?
Comment 6 xudong 2010-12-29 02:35:58 UTC
(In reply to comment #5)
> Any special way to reproduce it? What's the qemu command line?
> 
In the installation step long before, we installed different images, acpi supported/noacpi supported etc.
Now the failure happen on that booting a Windows guest with a no-acpi supported image.
comnand line "qemu-system-x86_64 -hda ./win.img -m 512", "qemu-system-x86_64 -hda /root/qcow.img -m 512 -no-acpi" fail to boot Windows guest with this image either.

Before this failure kvm commit, the two commands all can boot no-apci Windows guest successfully.


> Is it an ordinary boot or an install?
> 
An ordinary booting.


> At what stage does it fail?
Guest OS hang at "booting from hard disk".
Comment 7 Avi Kivity 2010-12-29 09:06:21 UTC
I wasn't able to reproduce, please capture a trace for me so I can analyze the issue:

- make sure CONFIG_TRACEPOINTS is enabled
- install kvm.git master
- install the udis86 and udis86-devel package
- download and install trace-cmd from git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git
- run trace-cmd record -b 200000 -e kvm qemu-system-x86_64...
- stop qemu when it hangs
- post the resulting trace.dat somewhere

Also, please post the results of running 'info registers' and 'x/50i $eip - 50' in the qemu monitor (-monitor stdio makes it easier).
Comment 8 Avi Kivity 2011-01-02 09:50:57 UTC
This _may_ be fixed by a0272630bb594b4eac03a79e77957df7dad8eade, kvm.git 'next' branch.
Comment 9 Avi Kivity 2011-01-04 09:43:11 UTC
Resolved by upstream d0dfc6b74a0c6e9ee46b62713256e2b025244d3c.