arm64: move PAC masks to <asm/pointer_auth.h>
authorMark Rutland <mark.rutland@arm.com>
Wed, 12 Apr 2023 16:01:34 +0000 (17:01 +0100)
committerWill Deacon <will@kernel.org>
Thu, 13 Apr 2023 11:27:11 +0000 (12:27 +0100)
Now that we use XPACLRI to strip PACs within the kernel, the
ptrauth_user_pac_mask() and ptrauth_kernel_pac_mask() definitions no
longer need to live in <asm/compiler.h>.

Move them to <asm/pointer_auth.h>, and ensure that this header is
included where they are used.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Amit Daniel Kachhap <amit.kachhap@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: Kristina Martsenko <kristina.martsenko@arm.com>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20230412160134.306148-4-mark.rutland@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/include/asm/compiler.h
arch/arm64/include/asm/pointer_auth.h
arch/arm64/kernel/crash_core.c

index b6d1d62..9bbd7b7 100644 (file)
@@ -8,13 +8,6 @@
 #define ARM64_ASM_PREAMBLE
 #endif
 
-/*
- * The EL0/EL1 pointer bits used by a pointer authentication code.
- * This is dependent on TBI0/TBI1 being enabled, or bits 63:56 would also apply.
- */
-#define ptrauth_user_pac_mask()                GENMASK_ULL(54, vabits_actual)
-#define ptrauth_kernel_pac_mask()      GENMASK_ULL(63, vabits_actual)
-
 #define xpaclri(ptr)                                                   \
 ({                                                                     \
        register unsigned long __xpaclri_ptr asm("x30") = (ptr);        \
index b0665db..d2e0306 100644 (file)
 #include <asm/memory.h>
 #include <asm/sysreg.h>
 
+/*
+ * The EL0/EL1 pointer bits used by a pointer authentication code.
+ * This is dependent on TBI0/TBI1 being enabled, or bits 63:56 would also apply.
+ */
+#define ptrauth_user_pac_mask()                GENMASK_ULL(54, vabits_actual)
+#define ptrauth_kernel_pac_mask()      GENMASK_ULL(63, vabits_actual)
+
 #define PR_PAC_ENABLED_KEYS_MASK                                               \
        (PR_PAC_APIAKEY | PR_PAC_APIBKEY | PR_PAC_APDAKEY | PR_PAC_APDBKEY)
 
index 2b65aae..66cde75 100644 (file)
@@ -8,6 +8,7 @@
 #include <asm/cpufeature.h>
 #include <asm/memory.h>
 #include <asm/pgtable-hwdef.h>
+#include <asm/pointer_auth.h>
 
 static inline u64 get_tcr_el1_t1sz(void);