[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <247598924.444809.1547898745403@email.ionos.de>
Date: Sat, 19 Jan 2019 12:52:25 +0100 (CET)
From: Stefan Wahren <stefan.wahren@...e.com>
To: Jeremy Linton <jeremy.linton@....com>, marc.zyngier@....com
Cc: mlangsdo@...hat.com, suzuki.poulose@....com,
linux-arm-kernel@...ts.infradead.org, catalin.marinas@....com,
julien.thierry@....com, will.deacon@....com,
linux-kernel@...r.kernel.org, steven.price@....com,
ykaukab@...e.de, dave.martin@....com, shankerd@...eaurora.org
Subject: Re: [PATCH v3 0/7] arm64: add system vulnerability sysfs entries
> Jeremy Linton <jeremy.linton@....com> hat am 18. Januar 2019 um 23:22 geschrieben:
>
>
> On 01/18/2019 12:05 PM, Stefan Wahren wrote:
> > Hi,
> >
> > ...
> >
> > a snippet or a new version would be nice
>
> Sure, I've got another version, to be posted soon (probably Tue of next
> week).
>
> In the meantime, Marc's tree should work with the following fix:
>
> diff --git a/arch/arm64/kernel/cpu_errata.c b/arch/arm64/kernel/cpu_errata.c
> index b44f87e7360d..7cfd34b2c0e5 100644
> --- a/arch/arm64/kernel/cpu_errata.c
> +++ b/arch/arm64/kernel/cpu_errata.c
> @@ -286,11 +286,15 @@ static int detect_harden_bp_fw(void)
> }
> #endif /* CONFIG_HARDEN_BRANCH_PREDICTOR */
>
> +#if defined(CONFIG_ARM64_SSBD) || \
> + defined(CONFIG_GENERIC_CPU_VULNERABILITIES)
> +static bool __ssb_safe = true;
> +#endif
> +
> #ifdef CONFIG_ARM64_SSBD
> DEFINE_PER_CPU_READ_MOSTLY(u64, arm64_ssbd_callback_required);
>
> int ssbd_state __read_mostly = ARM64_SSBD_KERNEL;
> -static bool __ssb_safe = true;
>
> static const struct ssbd_options {
> const char *str;
> @@ -569,6 +573,8 @@ check_branch_predictor(const struct
> arm64_cpu_capabilities *entry, int scope)
>
> WARN_ON(scope != SCOPE_LOCAL_CPU || preemptible());
>
> + arm64_requested_vuln_attrs |= VULN_SPECTREV2;
> +
> /* If the CPU has CSV2 set, we're safe */
> if
> (cpuid_feature_extract_unsigned_field(read_cpuid(ID_AA64PFR0_EL1),
> ID_AA64PFR0_CSV2_SHIFT))
> @@ -578,17 +584,17 @@ check_branch_predictor(const struct
> arm64_cpu_capabilities *entry, int scope)
> if (is_midr_in_range_list(read_cpuid_id(), spectre_v2_safe_list))
> return false;
>
> + __spectrev2_safe = false;
> +
> /* Fallback to firmware detection */
> need_wa = detect_harden_bp_fw();
> if (!need_wa)
> return false;
>
> - __spectrev2_safe = false;
> -
> if (need_wa < 0)
> pr_warn_once("ARM_SMCCC_ARCH_WORKAROUND_1 missing from
> firmware\n");
>
> - arm64_requested_vuln_attrs |= VULN_SPECTREV2;
> +
>
> return (need_wa > 0);
> }
>
>
fine with these changes i'm getting the following:
meltdown:Not affected
spec_store_bypass:Not affected
spectre_v1:Mitigation: __user pointer sanitization
spectre_v2:Not affected
Thanks
Stefan
Powered by blists - more mailing lists