From: Paolo Bonzini <pbonzini@redhat.com>
To: Maxim Levitsky <mlevitsk@redhat.com>, kvm@vger.kernel.org
Cc: Jim Mattson <jmattson@google.com>, Joerg Roedel <joro@8bytes.org>,
Borislav Petkov <bp@alien8.de>,
Thomas Gleixner <tglx@linutronix.de>,
"H. Peter Anvin" <hpa@zytor.com>,
Vitaly Kuznetsov <vkuznets@redhat.com>,
"open list:X86 ARCHITECTURE (32-BIT AND 64-BIT)"
<linux-kernel@vger.kernel.org>,
"maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)"
<x86@kernel.org>, Ingo Molnar <mingo@redhat.com>,
Wanpeng Li <wanpengli@tencent.com>,
Sean Christopherson <sean.j.christopherson@intel.com>
Subject: Re: [PATCH 8/8] KVM: nSVM: read only changed fields of the nested guest data area
Date: Thu, 20 Aug 2020 12:18:28 +0200 [thread overview]
Message-ID: <be88aaae-c776-32d2-fa69-00c6aace787d@redhat.com> (raw)
In-Reply-To: <33166884f54569ab47cc17a4c3e01f9dbc96401a.camel@redhat.com>
On 20/08/20 12:05, Maxim Levitsky wrote:
>> You probably should set clean to 0 also if the guest doesn't have the
>> VMCBCLEAN feature (so, you first need an extra patch to add the
>> VMCBCLEAN feature to cpufeatures.h). It's probably best to cache the
>> guest vmcbclean in struct vcpu_svm, too.
> Right, I totally forgot about this one.
>
> One thing why I made this patch optional, is that I can instead drop it,
> and not 'read back' the saved area on vmexit, this will probably be faster
> that what this optimization does. What do you think? Is this patch worth it?
> (I submitted it because I already implemented this and wanted to hear opinion
> on this).
Yeah, good point. It's one copy either way, either on vmexit (and
partly on vmentry depending on clean bits) or on vmentry. I had not
considered the need to copy from vmcb02 to the cached vmcb12 on vmexit. :(
Let's shelve this for a bit, and revisit it once we have separate vmcb01
and vmcb02. Then we might still use the clean bits to avoid copying
data from vmcb12 to vmcb02, including avoiding consistency checks
because we know the vmcb02 data is legit.
Patches 1-5 are still worthwhile, so you can clean them up and send them.
Paolo
next prev parent reply other threads:[~2020-08-20 10:36 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-20 9:13 [PATCH 0/8] KVM: nSVM: ondemand nested state allocation + nested guest state caching Maxim Levitsky
2020-08-20 9:13 ` [PATCH 1/8] KVM: SVM: rename a variable in the svm_create_vcpu Maxim Levitsky
2020-08-20 9:13 ` [PATCH 2/8] KVM: nSVM: rename nested 'vmcb' to vmcb_gpa in few places Maxim Levitsky
2020-08-20 9:56 ` Paolo Bonzini
2020-08-20 10:00 ` Maxim Levitsky
2020-08-20 10:19 ` Paolo Bonzini
2020-08-20 10:23 ` Maxim Levitsky
2020-08-20 10:56 ` Paolo Bonzini
2020-08-20 11:52 ` Maxim Levitsky
2020-08-20 9:13 ` [PATCH 3/8] KVM: SVM: refactor msr permission bitmap allocation Maxim Levitsky
2020-08-20 9:13 ` [PATCH 4/8] KVM: x86: allow kvm_x86_ops.set_efer to return a value Maxim Levitsky
2020-08-25 22:47 ` kernel test robot
2020-08-20 9:13 ` [PATCH 5/8] KVM: nSVM: implement ondemand allocation of the nested state Maxim Levitsky
2020-08-20 9:58 ` Paolo Bonzini
2020-08-20 10:02 ` Maxim Levitsky
2020-08-20 9:13 ` [PATCH 6/8] SVM: nSVM: cache whole nested vmcb instead of only its control area Maxim Levitsky
2020-08-20 9:13 ` [PATCH 7/8] KVM: nSVM: implement caching of nested vmcb save area Maxim Levitsky
2020-08-20 9:13 ` [PATCH 8/8] KVM: nSVM: read only changed fields of the nested guest data area Maxim Levitsky
2020-08-20 9:55 ` Paolo Bonzini
2020-08-20 9:57 ` Maxim Levitsky
2020-08-20 10:01 ` Paolo Bonzini
2020-08-20 10:05 ` Maxim Levitsky
2020-08-20 10:18 ` Paolo Bonzini [this message]
2020-08-20 10:26 ` Maxim Levitsky
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=be88aaae-c776-32d2-fa69-00c6aace787d@redhat.com \
--to=pbonzini@redhat.com \
--cc=bp@alien8.de \
--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=mlevitsk@redhat.com \
--cc=sean.j.christopherson@intel.com \
--cc=tglx@linutronix.de \
--cc=vkuznets@redhat.com \
--cc=wanpengli@tencent.com \
--cc=x86@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