From: Sean Christopherson <seanjc@google.com>
To: Xiaoyao Li <xiaoyao.li@intel.com>
Cc: Chenyi Qiang <chenyi.qiang@intel.com>,
pbonzini@redhat.com, vkuznets@redhat.com, wanpengli@tencent.com,
jmattson@google.com, joro@8bytes.org, tglx@linutronix.de,
mingo@redhat.com, bp@alien8.de, hpa@zytor.com, x86@kernel.org,
kvm@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] KVM: VMX: Enable Notify VM exit
Date: Fri, 15 Oct 2021 18:29:07 +0000 [thread overview]
Message-ID: <YWnIc7wVLBjaTcBX@google.com> (raw)
In-Reply-To: <b6f2acf8-eef4-9483-1937-191209bcef9f@intel.com>
On Mon, Sep 13, 2021, Xiaoyao Li wrote:
> On 9/10/2021 2:59 AM, Sean Christopherson wrote:
> > Yes, and no longer being able to run the vCPU is precisely the problem. The
> > condition(s) matters because if there's a possibility, however small, that enabling
> > NOTIFY_WINDOW can kill a well-behaved guest then it absolutely cannot be enabled by
> > default.
>
> For now, no condition will set it. For future, I believe it will be set only
> for some fatal case. However, we cannot guarantee no silicon bug to break a
> well-behaved the guest. Maybe let's make it opt-in?
Ya, I think an off-by-default module param makes sense.
> > > Either KVM_BUG_ON() or a specific EXIT to userspace should be OK?
> >
> > Not if the VM_CONTEXT_INVALID happens while L2 is running. If software can trigger
> > VM_CONTEXT_INVALID at will, then killing the VM would open up the door to a
> > malicious L2 killing L1 (which would be rather ironic since this is an anti-DoS
> > feature). IIUC, VM_CONTEXT_INVALID only means the current VMCS is garbage, thus
> > an occurence while L2 is active means that vmcs02 is junk, but L1's state in vmcs01,
> > vmcs12, etc... is still valid.
> >
>
> Maybe we can kill the L2 when VM_CONTEXT_INVALID happens in L2.
Ya, synthesizing a nested EXIT_REASON_TRIPLE_FAULT and sanitizing vmcs02/vmcs12 is
the least awful solution I can think of. I could have sworn I suggested as much,
but apparently that thought never made it from my brain to the keyboard.
prev parent reply other threads:[~2021-10-15 18:29 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-25 5:12 [PATCH v2] KVM: VMX: Enable Notify VM exit Tao Xu
2021-06-02 10:31 ` Vitaly Kuznetsov
2021-06-03 1:23 ` Tao Xu
2021-06-03 13:43 ` Vitaly Kuznetsov
2021-06-03 1:25 ` Xiaoyao Li
2021-06-03 13:35 ` Jim Mattson
2021-06-07 9:24 ` Xiaoyao Li
2021-06-03 13:52 ` Vitaly Kuznetsov
2021-06-07 9:23 ` Xiaoyao Li
2021-06-24 4:52 ` Tao Xu
2021-07-22 3:25 ` Xiaoyao Li
2021-07-30 20:41 ` Sean Christopherson
2021-08-02 12:53 ` Xiaoyao Li
2021-08-02 15:46 ` Sean Christopherson
2021-08-03 0:38 ` Xiaoyao Li
2021-09-02 9:28 ` Chenyi Qiang
2021-09-02 16:29 ` Sean Christopherson
2021-09-07 13:33 ` Xiaoyao Li
2021-09-09 18:47 ` Sean Christopherson
2021-09-10 7:39 ` Xiaoyao Li
2021-09-10 17:55 ` Sean Christopherson
2021-09-02 16:15 ` Sean Christopherson
2021-09-02 16:36 ` Sean Christopherson
2021-09-07 13:45 ` Xiaoyao Li
2021-09-09 18:59 ` Sean Christopherson
2021-09-13 2:58 ` Xiaoyao Li
2021-10-15 18:29 ` Sean Christopherson [this message]
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=YWnIc7wVLBjaTcBX@google.com \
--to=seanjc@google.com \
--cc=bp@alien8.de \
--cc=chenyi.qiang@intel.com \
--cc=hpa@zytor.com \
--cc=jmattson@google.com \
--cc=joro@8bytes.org \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=pbonzini@redhat.com \
--cc=tglx@linutronix.de \
--cc=vkuznets@redhat.com \
--cc=wanpengli@tencent.com \
--cc=x86@kernel.org \
--cc=xiaoyao.li@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.