From: Sean Christopherson <seanjc@google.com>
To: Zheyun Shen <szy0127@sjtu.edu.cn>
Cc: thomas.lendacky@amd.com, pbonzini@redhat.com, tglx@linutronix.de,
kevinloughlin@google.com, mingo@redhat.com, bp@alien8.de,
kvm@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v7 0/3] KVM: SVM: Flush cache only on CPUs running SEV guest
Date: Tue, 25 Feb 2025 17:37:37 -0800 [thread overview]
Message-ID: <Z75wYblH3_IFsoUW@google.com> (raw)
In-Reply-To: <20250128015345.7929-1-szy0127@sjtu.edu.cn>
On Tue, Jan 28, 2025, Zheyun Shen wrote:
> Previous versions pointed out the problem of wbinvd_on_all_cpus() in SEV
> and tried to maintain a cpumask to solve it. This version includes
> further code cleanup.
>
> Although dirty_mask is not maintained perfectly and may lead to wbinvd on
> physical CPUs that are not running a SEV guest, it's still better than
> wbinvd_on_all_cpus(). And vcpu migration is designed to be solved in
> future work.
I have a variety of comments, but no need to send a new version. I'm going to
post a combined version with the WBNOINVD series, hopefully tomorrow.
The only thing that needs your attention is the pre_sev_run() => sev_vcpu_load()
change between v3 and v4.
> ---
> v6 -> v7:
> - Fixed the writing oversight in sev_vcpu_load().
>
> v5 -> v6:
> - Replaced sev_get_wbinvd_dirty_mask() with the helper function
> to_kvm_sev_info().
>
> v4 -> v5:
> - rebase to tip @ 15e2f65f2ecf .
> - Added a commit to remove unnecessary calls to wbinvd().
> - Changed some comments.
>
> v3 -> v4:
> - Added a wbinvd helper and export it to SEV.
> - Changed the struct cpumask in kvm_sev_info into cpumask*, which should
> be dynamically allocated and freed.
> - Changed the time of recording the CPUs from pre_sev_run() to vcpu_load().
> - Removed code of clearing the mask.
>
> v2 -> v3:
> - Replaced get_cpu() with parameter cpu in pre_sev_run().
>
> v1 -> v2:
> - Added sev_do_wbinvd() to wrap two operations.
> - Used cpumask_test_and_clear_cpu() to avoid concurrent problems.
> ---
>
> Zheyun Shen (3):
> KVM: x86: Add a wbinvd helper
> KVM: SVM: Remove wbinvd in sev_vm_destroy()
> KVM: SVM: Flush cache only on CPUs running SEV guest
>
> arch/x86/kvm/svm/sev.c | 36 +++++++++++++++++++++++++++---------
> arch/x86/kvm/svm/svm.c | 2 ++
> arch/x86/kvm/svm/svm.h | 5 ++++-
> arch/x86/kvm/x86.c | 9 +++++++--
> arch/x86/kvm/x86.h | 1 +
> 5 files changed, 41 insertions(+), 12 deletions(-)
>
> --
> 2.34.1
>
prev parent reply other threads:[~2025-02-26 1:37 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-28 1:53 [PATCH v7 0/3] KVM: SVM: Flush cache only on CPUs running SEV guest Zheyun Shen
2025-01-28 1:53 ` [PATCH v7 1/3] KVM: x86: Add a wbinvd helper Zheyun Shen
2025-02-06 22:03 ` Tom Lendacky
2025-02-26 0:59 ` Sean Christopherson
2025-01-28 1:53 ` [PATCH v7 2/3] KVM: SVM: Remove wbinvd in sev_vm_destroy() Zheyun Shen
2025-02-06 22:04 ` Tom Lendacky
2025-01-28 1:53 ` [PATCH v7 3/3] KVM: SVM: Flush cache only on CPUs running SEV guest Zheyun Shen
2025-02-06 22:05 ` Tom Lendacky
2025-02-26 1:20 ` Sean Christopherson
2025-02-26 3:26 ` Zheyun Shen
2025-02-26 23:58 ` Sean Christopherson
2025-02-26 1:37 ` 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=Z75wYblH3_IFsoUW@google.com \
--to=seanjc@google.com \
--cc=bp@alien8.de \
--cc=kevinloughlin@google.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=pbonzini@redhat.com \
--cc=szy0127@sjtu.edu.cn \
--cc=tglx@linutronix.de \
--cc=thomas.lendacky@amd.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox