]> git.baikalelectronics.ru Git - kernel.git/commit
arm64: errata: Fix handling of 1418040 with late CPU onlining
authorWill Deacon <will@kernel.org>
Fri, 6 Nov 2020 11:14:26 +0000 (11:14 +0000)
committerWill Deacon <will@kernel.org>
Tue, 10 Nov 2020 13:09:39 +0000 (13:09 +0000)
commitd4a317039df6c91b5535bb64af44eb5cc9f4f42d
treed537cff035f4204a6078cc962bd794de9d13689d
parent7abab5658b82082f443a20997d20ae454defdb8e
arm64: errata: Fix handling of 1418040 with late CPU onlining

In a surprising turn of events, it transpires that CPU capabilities
configured as ARM64_CPUCAP_WEAK_LOCAL_CPU_FEATURE are never set as the
result of late-onlining. Therefore our handling of erratum 1418040 does
not get activated if it is not required by any of the boot CPUs, even
though we allow late-onlining of an affected CPU.

In order to get things working again, replace the cpus_have_const_cap()
invocation with an explicit check for the current CPU using
this_cpu_has_cap().

Cc: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Cc: Stephen Boyd <swboyd@chromium.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Acked-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20201106114952.10032-1-will@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/include/asm/cpufeature.h
arch/arm64/kernel/process.c