Patrick Williams | 8dd6848 | 2022-10-04 07:57:18 -0500 | [diff] [blame^] | 1 | From 85581abbfc7e3df12091c5004788b0729cfd99f1 Mon Sep 17 00:00:00 2001 |
Brad Bishop | bec4ebc | 2022-08-03 09:55:16 -0400 | [diff] [blame] | 2 | From: Andre Przywara <andre.przywara@arm.com> |
| 3 | Date: Fri, 17 May 2019 17:39:27 +0100 |
Patrick Williams | 8dd6848 | 2022-10-04 07:57:18 -0500 | [diff] [blame^] | 4 | Subject: [PATCH] arm64: kpti: Whitelist early Arm Neoverse N1 revisions |
Brad Bishop | bec4ebc | 2022-08-03 09:55:16 -0400 | [diff] [blame] | 5 | |
| 6 | Early revisions (r1p0) of the Neoverse N1 core did not feature the |
| 7 | CSV3 field in ID_AA64PFR0_EL1 to advertise they are not affected by |
| 8 | the Spectre variant 3 (aka Meltdown) vulnerability. |
| 9 | |
| 10 | Add this particular revision to the whitelist to avoid enabling KPTI. |
| 11 | |
| 12 | Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
Patrick Williams | 8dd6848 | 2022-10-04 07:57:18 -0500 | [diff] [blame^] | 13 | |
| 14 | Upstream-Status: Inappropriate |
| 15 | Signed-off-by: Andre Przywara <andre.przywara@arm.com> |
Brad Bishop | bec4ebc | 2022-08-03 09:55:16 -0400 | [diff] [blame] | 16 | --- |
| 17 | arch/arm64/kernel/cpufeature.c | 1 + |
| 18 | 1 file changed, 1 insertion(+) |
| 19 | |
| 20 | diff --git a/arch/arm64/kernel/cpufeature.c b/arch/arm64/kernel/cpufeature.c |
Patrick Williams | 8dd6848 | 2022-10-04 07:57:18 -0500 | [diff] [blame^] | 21 | index 3e52a9e8b50b..2e64bc4689a0 100644 |
Brad Bishop | bec4ebc | 2022-08-03 09:55:16 -0400 | [diff] [blame] | 22 | --- a/arch/arm64/kernel/cpufeature.c |
| 23 | +++ b/arch/arm64/kernel/cpufeature.c |
Patrick Williams | 8dd6848 | 2022-10-04 07:57:18 -0500 | [diff] [blame^] | 24 | @@ -1530,6 +1530,7 @@ static bool unmap_kernel_at_el0(const struct arm64_cpu_capabilities *entry, |
Brad Bishop | bec4ebc | 2022-08-03 09:55:16 -0400 | [diff] [blame] | 25 | MIDR_ALL_VERSIONS(MIDR_QCOM_KRYO_2XX_SILVER), |
| 26 | MIDR_ALL_VERSIONS(MIDR_QCOM_KRYO_3XX_SILVER), |
| 27 | MIDR_ALL_VERSIONS(MIDR_QCOM_KRYO_4XX_SILVER), |
| 28 | + MIDR_REV(MIDR_NEOVERSE_N1, 1, 0), /* missing CSV3 */ |
| 29 | { /* sentinel */ } |
| 30 | }; |
| 31 | char const *str = "kpti command line option"; |