arm64: entry: Add vectors that have the bhb mitigation sequences
authorJames Morse <james.morse@arm.com>
Thu, 18 Nov 2021 13:59:46 +0000 (13:59 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 11 Mar 2022 11:22:34 +0000 (12:22 +0100)
commit50e700a117669e072fb9e47ff3ea49e4a8cacf04
treea2034972ca1c79475156df6b5ebce4753d312342
parentffb8a34c0fd81fdcf677bc8e9af251ea526e8c49
arm64: entry: Add vectors that have the bhb mitigation sequences

commit ba2689234be92024e5635d30fe744f4853ad97db upstream.

Some CPUs affected by Spectre-BHB need a sequence of branches, or a
firmware call to be run before any indirect branch. This needs to go
in the vectors. No CPU needs both.

While this can be patched in, it would run on all CPUs as there is a
single set of vectors. If only one part of a big/little combination is
affected, the unaffected CPUs have to run the mitigation too.

Create extra vectors that include the sequence. Subsequent patches will
allow affected CPUs to select this set of vectors. Later patches will
modify the loop count to match what the CPU requires.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm64/include/asm/assembler.h
arch/arm64/include/asm/vectors.h [new file with mode: 0644]
arch/arm64/kernel/entry.S
arch/arm64/kernel/proton-pack.c
include/linux/arm-smccc.h