From: bugzilla-daemon@bugzilla.kernel.org
To: kvm@vger.kernel.org
Subject: [Bug 53861] New: nVMX: inaccuracy in emulation of entry failure
Date: Thu, 14 Feb 2013 15:13:28 +0000 (UTC) [thread overview]
Message-ID: <bug-53861-28872@https.bugzilla.kernel.org/> (raw)
https://bugzilla.kernel.org/show_bug.cgi?id=53861
Summary: nVMX: inaccuracy in emulation of entry failure
Product: Virtualization
Version: unspecified
Platform: All
OS/Version: Linux
Tree: Mainline
Status: NEW
Severity: enhancement
Priority: P1
Component: kvm
AssignedTo: virtualization_kvm@kernel-bugs.osdl.org
ReportedBy: nyh@math.technion.ac.il
Regression: No
Emulation of nested entry (L1->L2) failure is rather involved, and there are
two kinds of entry failures - some recognized before the vmcs02 was touched
(and nested_vmx_failValid/Invalid() is used), and some after we started to
touch vmcs02 (and nested_vmx_entry_failure() is used). This whole business is
explained in the Intel SDM, section "VM-entry failures during or after loading
guest state".
But where's a corner cases related to *buggy L0* that we probably do not
emulate sensibly:
Imagine that L0 runs L2 for L1, and succeeds, but then exits to L0 for some
reason and L0 handles this event (without L1's involvement) and wants to resume
L2. What if this entry fails, e.g., because we (L0) filled some vmcs02 field
incorrectly? Neither nested_vmx_failValid() or nested_vmx_entry_failure() are
appropriate because L2 did run for a while and most likely changed vmcs02 (so
we need to update vmcs12 with prepare_vmcs12()).
This can only happen due to L0 bug (which sets something wrong in the vmcs) so
perhaps the best solution is just to kill L1 in this case? Is there a better
solution?
--
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
next reply other threads:[~2013-02-14 15:13 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-14 15:13 bugzilla-daemon [this message]
2013-02-14 15:14 ` [Bug 53861] nVMX: inaccuracy in emulation of entry failure bugzilla-daemon
2015-03-17 3:53 ` bugzilla-daemon
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=bug-53861-28872@https.bugzilla.kernel.org/ \
--to=bugzilla-daemon@bugzilla.kernel.org \
--cc=kvm@vger.kernel.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