From: Sean Christopherson <seanjc@google.com>
To: Josh Poimboeuf <jpoimboe@kernel.org>
Cc: x86@kernel.org, linux-kernel@vger.kernel.org,
Borislav Petkov <bp@alien8.de>,
Peter Zijlstra <peterz@infradead.org>,
Babu Moger <babu.moger@amd.com>,
Paolo Bonzini <pbonzini@redhat.com>,
David.Kaplan@amd.com, Andrew Cooper <andrew.cooper3@citrix.com>,
Nikolay Borisov <nik.borisov@suse.com>,
gregkh@linuxfoundation.org, Thomas Gleixner <tglx@linutronix.de>
Subject: Re: [PATCH 04/23] KVM: x86: Add IBPB_BRTYPE support
Date: Fri, 25 Aug 2023 11:15:49 -0700 [thread overview]
Message-ID: <ZOjv1Q0YgoxwElMW@google.com> (raw)
In-Reply-To: <79d5f5914fb42c2c62418ffbcd78f138645ded21.1692919072.git.jpoimboe@kernel.org>
On Fri, Aug 25, 2023, Josh Poimboeuf wrote:
> Add support for the IBPB_BRTYPE CPUID flag, which indicates that IBPB
> includes branch type prediction flushing.
Please add:
Note, like SRSO_NO, advertise support for IBPB_BRTYPE even if it's not
enumerated by in the raw CPUID, i.e. bypass the cpuid_count() in
__kvm_cpu_cap_mask(). Some CPUs that gained support via a uCode patch
don't report IBPB_BRTYPE via CPUID (the kernel forces the flag).
Opportunistically use kvm_cpu_cap_check_and_set() for SRSS_NO instead
of manually querying host support (cpu_feature_enabled() and
boot_cpu_has() yield the same end result in this case).
Feel free to take this through tip if this is urgent enough to go into 6.6,
otherwise I'll grab it for 6.7.
Acked-by: Sean Christopherson <seanjc@google.com>
> Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
> ---
> arch/x86/kvm/cpuid.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c
> index d3432687c9e6..c65f3ff1c79d 100644
> --- a/arch/x86/kvm/cpuid.c
> +++ b/arch/x86/kvm/cpuid.c
> @@ -729,8 +729,8 @@ void kvm_set_cpu_caps(void)
> F(NULL_SEL_CLR_BASE) | F(AUTOIBRS) | 0 /* PrefetchCtlMsr */
> );
>
> - if (cpu_feature_enabled(X86_FEATURE_SRSO_NO))
> - kvm_cpu_cap_set(X86_FEATURE_SRSO_NO);
> + kvm_cpu_cap_check_and_set(X86_FEATURE_IBPB_BRTYPE);
> + kvm_cpu_cap_check_and_set(X86_FEATURE_SRSO_NO);
>
> kvm_cpu_cap_init_kvm_defined(CPUID_8000_0022_EAX,
> F(PERFMON_V2)
> --
> 2.41.0
>
next prev parent reply other threads:[~2023-08-25 18:17 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-25 7:01 [PATCH v2 00/23] SRSO fixes/cleanups Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 01/23] x86/srso: Fix srso_show_state() side effect Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 02/23] x86/srso: Set CPUID feature bits independently of bug or mitigation status Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 03/23] x86/srso: Don't probe microcode in a guest Josh Poimboeuf
2023-08-25 7:52 ` Andrew Cooper
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 04/23] KVM: x86: Add IBPB_BRTYPE support Josh Poimboeuf
2023-08-25 18:15 ` Sean Christopherson [this message]
2023-08-26 15:49 ` Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 05/23] KVM: x86: Add SBPB support Josh Poimboeuf
2023-08-25 18:20 ` Sean Christopherson
2023-08-25 7:01 ` [PATCH 06/23] x86/srso: Fix SBPB enablement for spec_rstack_overflow=off Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 07/23] x86/srso: Fix SBPB enablement for (possible) future fixed HW Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 08/23] x86/srso: Print actual mitigation if requested mitigation isn't possible Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 09/23] x86/srso: Print mitigation for retbleed IBPB case Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 10/23] x86/srso: Fix vulnerability reporting for missing microcode Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-09-01 9:40 ` Borislav Petkov
2023-09-02 10:46 ` Ingo Molnar
2023-09-02 17:04 ` Borislav Petkov
2023-09-03 14:37 ` Borislav Petkov
2023-09-05 4:57 ` Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 11/23] x86/srso: Fix unret validation dependencies Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 12/23] x86/alternatives: Remove faulty optimization Josh Poimboeuf
2023-08-25 9:20 ` Ingo Molnar
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 10:27 ` [tip: x86/urgent] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 13/23] x86/srso: Improve i-cache locality for alias mitigation Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 14/23] x86/srso: Unexport untraining functions Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 15/23] x86/srso: Remove 'pred_cmd' label Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 19:51 ` [PATCH 15/23] " Nikolay Borisov
2023-08-26 15:45 ` Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 16/23] x86/bugs: Remove default case for fully switched enums Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-09-02 9:02 ` [PATCH 16/23] " Borislav Petkov
2023-09-05 5:08 ` Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 17/23] x86/srso: Move retbleed IBPB check into existing 'has_microcode' code block Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 18/23] x86/srso: Remove redundant X86_FEATURE_ENTRY_IBPB check Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-09-02 9:10 ` [PATCH 18/23] " Borislav Petkov
2023-08-25 7:01 ` [PATCH 19/23] x86/srso: Disentangle rethunk-dependent options Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 20/23] x86/rethunk: Use SYM_CODE_START[_LOCAL]_NOALIGN macros Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 21/23] x86/retpoline: Remove .text..__x86.return_thunk section Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 22/23] x86/nospec: Refactor UNTRAIN_RET[_*] Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 18:22 ` [PATCH 22/23] " Nikolay Borisov
2023-08-26 15:42 ` Josh Poimboeuf
2023-08-25 7:01 ` [PATCH 23/23] x86/calldepth: Rename __x86_return_skl() to call_depth_return_thunk() Josh Poimboeuf
2023-08-25 10:19 ` [tip: x86/bugs] " tip-bot2 for Josh Poimboeuf
2023-08-25 10:38 ` [PATCH v2 00/23] SRSO fixes/cleanups Ingo Molnar
2023-08-26 15:57 ` Josh Poimboeuf
2023-08-26 17:00 ` Ingo Molnar
2023-10-05 1:29 ` Sean Christopherson
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=ZOjv1Q0YgoxwElMW@google.com \
--to=seanjc@google.com \
--cc=David.Kaplan@amd.com \
--cc=andrew.cooper3@citrix.com \
--cc=babu.moger@amd.com \
--cc=bp@alien8.de \
--cc=gregkh@linuxfoundation.org \
--cc=jpoimboe@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nik.borisov@suse.com \
--cc=pbonzini@redhat.com \
--cc=peterz@infradead.org \
--cc=tglx@linutronix.de \
--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