From: Jan Kiszka <jan.kiszka@web.de>
To: Gleb Natapov <gleb@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>
Cc: kvm <kvm@vger.kernel.org>,
"Nakajima, Jun" <jun.nakajima@intel.com>,
"Ren, Yongjie" <yongjie.ren@intel.com>
Subject: [PATCH] KVM: nVMX: Skip PF interception check when queuing during nested run
Date: Sun, 28 Apr 2013 09:24:41 +0200 [thread overview]
Message-ID: <517CCEB9.7030504@web.de> (raw)
From: Jan Kiszka <jan.kiszka@siemens.com>
While a nested run is pending, vmx_queue_exception is only called to
requeue exceptions that were previously picked up via
vmx_cancel_injection. Therefore, we must not check for PF interception
by L1, possibly causing a bogus nested vmexit.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
This and the KVM_REQ_IMMEDIATE_EXIT fix allows me to boot an L2 Linux
without problems. Yongjie, please check if it resolves your issue(s) as
well.
arch/x86/kvm/vmx.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
index d663a59..45eb949 100644
--- a/arch/x86/kvm/vmx.c
+++ b/arch/x86/kvm/vmx.c
@@ -1917,7 +1917,7 @@ static void vmx_queue_exception(struct kvm_vcpu *vcpu, unsigned nr,
u32 intr_info = nr | INTR_INFO_VALID_MASK;
if (nr == PF_VECTOR && is_guest_mode(vcpu) &&
- nested_pf_handled(vcpu))
+ !vmx->nested.nested_run_pending && nested_pf_handled(vcpu))
return;
if (has_error_code) {
--
1.7.3.4
next reply other threads:[~2013-04-28 7:24 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-28 7:24 Jan Kiszka [this message]
2013-04-28 10:36 ` [PATCH] KVM: nVMX: Skip PF interception check when queuing during nested run Gleb Natapov
2013-04-28 14:30 ` Ren, Yongjie
2013-04-28 14:33 ` Gleb Natapov
2013-04-28 16:20 ` Ren, Yongjie
2013-04-28 16:26 ` Jan Kiszka
2013-04-28 16:40 ` [PATCH] KVM: x86: Account for failing enable_irq_window for NMI window request Jan Kiszka
2013-04-29 14:37 ` Paolo Bonzini
2013-04-29 14:46 ` [PATCH v2] " Jan Kiszka
2013-04-29 15:38 ` Paolo Bonzini
2013-05-03 1:17 ` Marcelo Tosatti
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=517CCEB9.7030504@web.de \
--to=jan.kiszka@web.de \
--cc=gleb@redhat.com \
--cc=jun.nakajima@intel.com \
--cc=kvm@vger.kernel.org \
--cc=mtosatti@redhat.com \
--cc=yongjie.ren@intel.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.