| From 126da011e989b60e7899cb2b1584cb815357b19f Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 16 Mar 2022 19:38:18 +0100 |
| Subject: arm64: fix clang warning about TRAMP_VALIAS |
| |
| From: Arnd Bergmann <arnd@arndb.de> |
| |
| [ Upstream commit 7f34b43e07cb512b28543fdcb9f35d1fbfda9ebc ] |
| |
| The newly introduced TRAMP_VALIAS definition causes a build warning |
| with clang-14: |
| |
| arch/arm64/include/asm/vectors.h:66:31: error: arithmetic on a null pointer treated as a cast from integer to pointer is a GNU extension [-Werror,-Wnull-pointer-arithmetic] |
| return (char *)TRAMP_VALIAS + SZ_2K * slot; |
| |
| Change the addition to something clang does not complain about. |
| |
| Fixes: bd09128d16fa ("arm64: Add percpu vectors for EL1") |
| Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
| Acked-by: James Morse <james.morse@arm.com> |
| Link: https://lore.kernel.org/r/20220316183833.1563139-1-arnd@kernel.org |
| Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| arch/arm64/include/asm/vectors.h | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| diff --git a/arch/arm64/include/asm/vectors.h b/arch/arm64/include/asm/vectors.h |
| index f64613a96d53..bc9a2145f419 100644 |
| --- a/arch/arm64/include/asm/vectors.h |
| +++ b/arch/arm64/include/asm/vectors.h |
| @@ -56,14 +56,14 @@ enum arm64_bp_harden_el1_vectors { |
| DECLARE_PER_CPU_READ_MOSTLY(const char *, this_cpu_vector); |
| |
| #ifndef CONFIG_UNMAP_KERNEL_AT_EL0 |
| -#define TRAMP_VALIAS 0 |
| +#define TRAMP_VALIAS 0ul |
| #endif |
| |
| static inline const char * |
| arm64_get_bp_hardening_vector(enum arm64_bp_harden_el1_vectors slot) |
| { |
| if (arm64_kernel_unmapped_at_el0()) |
| - return (char *)TRAMP_VALIAS + SZ_2K * slot; |
| + return (char *)(TRAMP_VALIAS + SZ_2K * slot); |
| |
| WARN_ON_ONCE(slot == EL1_VECTOR_KPTI); |
| |
| -- |
| 2.34.1 |
| |