qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] DOS VM problem with QEMU-KVM and newer kernels


From: Gerhard Wiesinger
Subject: Re: [Qemu-devel] DOS VM problem with QEMU-KVM and newer kernels
Date: Tue, 17 Apr 2012 08:04:16 +0200
User-agent: Mozilla/5.0 (Windows NT 6.0; WOW64; rv:11.0) Gecko/20120327 Thunderbird/11.0.1

On 15.04.2012 11:44, Avi Kivity wrote:
On 04/12/2012 09:32 PM, Gerhard Wiesinger wrote:
Hello,

I'm having problems with recents kernels and qemu-kvm with a DOS VM:
TD286
System: Bad selector: 0007
System: Bad selector: 0D87
System: Bad selector: 001F
System: Bad selector: 0007
GP at 0020 21D4 EC 0DC4
Error 269 loading D:\BP\BIN\TD286.EXE into extended memory

Another 286 DOS Extender application also rises a general protection
fault:
GP at 0020 18A1 CODE 357C

Doesn't depend on the used DOS memory manager and is always
reproduceable.

Depends only on kernel version and not qemu-kvm and seabios (tried to
bisect it without success):
# NOK: Linux 3.3.1-3.fc16.x86_64 #1 SMP Wed Apr 4 18:08:51 UTC 2012
x86_64 x86_64 x86_64 GNU/Linux
# NOK: Linux 3.2.10-3.fc16.x86_64 #1 SMP Thu Mar 15 19:39:46 UTC 2012
x86_64 x86_64 x86_64 GNU/Linux
# OK: Linux 3.1.9-1.fc16.x86_64 #1 SMP Fri Jan 13 16:37:42 UTC 2012
x86_64 x86_64 x86_64 GNU/Linux
# OK: Linux 2.6.41.9-1.fc15.x86_64 #1 SMP Fri Jan 13 16:46:51 UTC 2012
x86_64 x86_64 x86_64 GNU/Linux

CPU is an AMD one.

Any ideas how to fix it again?
Any switches which might help?


The trigger is probably

commit f1c1da2bde712812a3e0f9a7a7ebe7a916a4b5f4
Author: Jan Kiszka<address@hidden>
Date:   Tue Oct 18 18:23:11 2011 +0200

     KVM: SVM: Keep intercepting task switching with NPT enabled

     AMD processors apparently have a bug in the hardware task switching
     support when NPT is enabled. If the task switch triggers a NPF, we can
     get wrong EXITINTINFO along with that fault. On resume, spurious
     exceptions may then be injected into the guest.

     We were able to reproduce this bug when our guest triggered #SS
and the
     handler were supposed to run over a separate task with not yet touched
     stack pages.

     Work around the issue by continuing to emulate task switches even in
     NPT mode.

     Signed-off-by: Jan Kiszka<address@hidden>
     Signed-off-by: Marcelo Tosatti<address@hidden>
Although it's not the patch's direct fault - it simply exposed an
existing bug in kvm.

Things to try:
- revert the patch with a newer kernel
- try 3.4-rc2 which has some task switch fixes from Kevin; if you want a
Fedora kernel, use rawhide's [2]
- post traces [1]

Jan, Joerg, was an AMD erratum published for the bug?

[1] http://www.linux-kvm.org/page/Tracing
[2]
http://mirrors.kernel.org/fedora/development/rawhide/x86_64/os/Packages/k/kernel-3.4.0-0.rc2.git2.1.fc18.x86_64.rpm


Hello Avi,

Status is as follows:
1.) Kernel 3.4.x DIDN'T fix the problem
2.) Reverting f1c1da2bde712812a3e0f9a7a7ebe7a916a4b5f4 FIXED the problem.

So the bug is still in 3.2., 3.3, 3.4rc present and a possible fix doesn't work. Should be fixed in 3.4 release.

How to proceed further?

I can try some patches if you want.

Thnx for all your help.

Ciao,
Gerhard




reply via email to

[Prev in Thread] Current Thread [Next in Thread]