summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorMark Rutland <mark.rutland@arm.com>2018-04-23 11:41:33 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-01-17 19:45:46 +0100
commita97fdbf0f25c17b3c296dce6c1f2731cbdb39e7c (patch)
treea6874d507e84fffceab4e694ef88230ca5f5a8a3 /arch
parent56614548ff01c92cbae9870a462bde24dedaf194 (diff)
downloadlinux-stable-a97fdbf0f25c17b3c296dce6c1f2731cbdb39e7c.tar.gz
linux-stable-a97fdbf0f25c17b3c296dce6c1f2731cbdb39e7c.tar.bz2
linux-stable-a97fdbf0f25c17b3c296dce6c1f2731cbdb39e7c.zip
arm64: add sentinel to kpti_safe_list
commit 71c751f2a43fa03fae3cf5f0067ed3001a397013 upstream. We're missing a sentinel entry in kpti_safe_list. Thus is_midr_in_range_list() can walk past the end of kpti_safe_list. Depending on the contents of memory, this could erroneously match a CPU's MIDR, cause a data abort, or other bad outcomes. Add the sentinel entry to avoid this. Fixes: be5b299830c63ed7 ("arm64: capabilities: Add support for checks based on a list of MIDRs") Signed-off-by: Mark Rutland <mark.rutland@arm.com> Reported-by: Jan Kiszka <jan.kiszka@siemens.com> Tested-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Suzuki K Poulose <suzuki.poulose@arm.com> Cc: Will Deacon <will.deacon@arm.com> Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Juerg Haefliger <juergh@canonical.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm64/kernel/cpufeature.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm64/kernel/cpufeature.c b/arch/arm64/kernel/cpufeature.c
index 60066315d669..ae28979676c1 100644
--- a/arch/arm64/kernel/cpufeature.c
+++ b/arch/arm64/kernel/cpufeature.c
@@ -836,6 +836,7 @@ static bool unmap_kernel_at_el0(const struct arm64_cpu_capabilities *entry,
MIDR_ALL_VERSIONS(MIDR_CORTEX_A57),
MIDR_ALL_VERSIONS(MIDR_CORTEX_A72),
MIDR_ALL_VERSIONS(MIDR_CORTEX_A73),
+ { /* sentinel */ }
};
char const *str = "kpti command line option";
bool meltdown_safe;