Rather than open-code the extraction of the E0PD field from the MMFR2
register, we can use the cpuid_feature_extract_unsigned_field() helper
instead.
Signed-off-by: Will Deacon <will@kernel.org>
---
arch/arm64/kernel/cpufeature.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/arm64/kernel/cpufeature.c b/arch/arm64/kernel/cpufeature.c
index d5242b44dc5a..1ebeb5bc17d2 100644
--- a/arch/arm64/kernel/cpufeature.c
+++ b/arch/arm64/kernel/cpufeature.c
@@ -980,7 +980,6 @@ has_useable_cnp(const struct arm64_cpu_capabilities *entry, int scope)
*/
bool kaslr_requires_kpti(void)
{
- u64 ftr;
if (!IS_ENABLED(CONFIG_RANDOMIZE_BASE))
return false;
@@ -989,8 +988,9 @@ bool kaslr_requires_kpti(void)
* where available.
*/
if (IS_ENABLED(CONFIG_ARM64_E0PD)) {
- ftr = read_sysreg_s(SYS_ID_AA64MMFR2_EL1);
- if ((ftr >> ID_AA64MMFR2_E0PD_SHIFT) & 0xf)
+ u64 mmfr2 = read_sysreg_s(SYS_ID_AA64MMFR2_EL1);
+ if (cpuid_feature_extract_unsigned_field(mmfr2,
+ ID_AA64MMFR2_E0PD_SHIFT))
return false;
}
--
2.25.0.rc1.283.g88dfdc4193-goog
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel