public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Avi Kivity <avi@redhat.com>
To: Gerhard Wiesinger <lists@wiesinger.com>
Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org,
	Jan Kiszka <jan.kiszka@siemens.com>,
	"Roedel, Joerg" <Joerg.Roedel@amd.com>,
	Kevin Wolf <kwolf@redhat.com>
Subject: Re: DOS VM problem with QEMU-KVM and newer kernels
Date: Sun, 15 Apr 2012 12:44:42 +0300	[thread overview]
Message-ID: <4F8A988A.2000009@redhat.com> (raw)
In-Reply-To: <4F871FB6.4020906@wiesinger.com>

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@siemens.com>
> 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@siemens.com>
>     Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>

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


  reply	other threads:[~2012-04-15  9:44 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-12 18:32 DOS VM problem with QEMU-KVM and newer kernels Gerhard Wiesinger
2012-04-15  9:44 ` Avi Kivity [this message]
2012-04-15 19:03   ` Gerhard Wiesinger
2012-04-16 10:11     ` Avi Kivity
2012-04-16 10:25   ` Jan Kiszka
2012-04-16 10:30     ` Roedel, Joerg
2012-04-16 12:03       ` Avi Kivity
2012-04-16 12:18         ` Gerhard Wiesinger
2012-04-16 12:28           ` Avi Kivity
2012-04-16 11:59     ` Avi Kivity
2012-04-17  6:04   ` Gerhard Wiesinger
2012-04-17  6:57     ` Gleb Natapov
2012-04-17  7:33       ` [Qemu-devel] " Avi Kivity

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F8A988A.2000009@redhat.com \
    --to=avi@redhat.com \
    --cc=Joerg.Roedel@amd.com \
    --cc=jan.kiszka@siemens.com \
    --cc=kvm@vger.kernel.org \
    --cc=kwolf@redhat.com \
    --cc=lists@wiesinger.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox