Re: [PATCH v3 17/35] x86/bugs: Restructure l1tf mitigation
From: Josh Poimboeuf
Date: Mon Feb 10 2025 - 20:21:20 EST
On Wed, Jan 08, 2025 at 02:24:57PM -0600, David Kaplan wrote:
> static void __init l1tf_select_mitigation(void)
> +{
> + if (!boot_cpu_has_bug(X86_BUG_L1TF) || cpu_mitigations_off()) {
> + l1tf_mitigation = L1TF_MITIGATION_OFF;
> + return;
> + }
> +
> + if (l1tf_mitigation == L1TF_MITIGATION_AUTO) {
> + if (cpu_mitigations_auto_nosmt())
> + l1tf_mitigation = L1TF_MITIGATION_FLUSH_NOSMT;
> + else
> + l1tf_mitigation = L1TF_MITIGATION_FLUSH;
> + }
> +
> +}
Extra whitespace.
> +
> +static void __init l1tf_apply_mitigation(void)
> {
> u64 half_pa;
>
> if (!boot_cpu_has_bug(X86_BUG_L1TF))
> return;
>
> - if (cpu_mitigations_off())
> - l1tf_mitigation = L1TF_MITIGATION_OFF;
> - else if (cpu_mitigations_auto_nosmt())
> - l1tf_mitigation = L1TF_MITIGATION_FLUSH_NOSMT;
> -
> override_cache_bits(&boot_cpu_data);
>
> switch (l1tf_mitigation) {
> case L1TF_MITIGATION_OFF:
> + return;
Note the PTE inverstion mitigation is already done unconditionally, the
X86_FEATURE_L1TF_PTEINV bit is just for reporting that. So this
shouldn't return.
--
Josh