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 <jan.kiszka@xxxxxxxxxxx>
> 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 <jan.kiszka@xxxxxxxxxxx>
> Signed-off-by: Marcelo Tosatti <mtosatti@xxxxxxxxxx>
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
--
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
[KVM ARM]
[KVM ia64]
[KVM ppc]
[Spice Development]
[Libvirt]
[Libvirt Users]
[Linux USB Devel]
[Video for Linux]
[Linux Audio Users]
[Photo]
[Yosemite News]
[Yosemite Photos]
[Linux Kernel]
[Linux SCSI]
[XFree86]