diff options
author | Mark Rutland <mark.rutland@arm.com> | 2022-11-14 17:40:42 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-01-14 12:16:13 +0300 |
commit | 0461a8c278b8fe74d19e58bc224327bef645e295 (patch) | |
tree | 73760f62e2e87484b8eb194196a03fbc01226cb1 /include | |
parent | 5a52380b8193cf8be6c4a6b94b86ef64ed80c0dc (diff) | |
download | linux-0461a8c278b8fe74d19e58bc224327bef645e295.tar.xz |
arm64: make is_ttbrX_addr() noinstr-safe
[ Upstream commit d8c1d798a2e5091128c391c6dadcc9be334af3f5 ]
We use is_ttbr0_addr() in noinstr code, but as it's only marked as
inline, it's theoretically possible for the compiler to place it
out-of-line and instrument it, which would be problematic.
Mark is_ttbr0_addr() as __always_inline such that that can safely be
used from noinstr code. For consistency, do the same to is_ttbr1_addr().
Note that while is_ttbr1_addr() calls arch_kasan_reset_tag(), this is a
macro (and its callees are either macros or __always_inline), so there
is not a risk of transient instrumentation.
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20221114144042.3001140-1-mark.rutland@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions