diff options
author | Will Deacon <will@kernel.org> | 2020-05-15 17:17:12 +0200 |
---|---|---|
committer | Will Deacon <will@kernel.org> | 2020-05-18 18:47:48 +0200 |
commit | 871e100e432c651c9c46fb9c3184b4577e0de3ae (patch) | |
tree | 95f57bcb3f5f40aac9f9075e51d5456b21e591f3 | |
parent | scs: Remove references to asm/scs.h from core code (diff) | |
download | linux-871e100e432c651c9c46fb9c3184b4577e0de3ae.tar.xz linux-871e100e432c651c9c46fb9c3184b4577e0de3ae.zip |
scs: Move DEFINE_SCS macro into core code
Defining static shadow call stacks is not architecture-specific, so move
the DEFINE_SCS() macro into the core header file.
Tested-by: Sami Tolvanen <samitolvanen@google.com>
Reviewed-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Will Deacon <will@kernel.org>
-rw-r--r-- | arch/arm64/kernel/scs.c | 4 | ||||
-rw-r--r-- | include/linux/scs.h | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/arch/arm64/kernel/scs.c b/arch/arm64/kernel/scs.c index 955875dff9e1..e8f7ff45dd8f 100644 --- a/arch/arm64/kernel/scs.c +++ b/arch/arm64/kernel/scs.c @@ -8,10 +8,6 @@ #include <linux/percpu.h> #include <linux/scs.h> -/* Allocate a static per-CPU shadow stack */ -#define DEFINE_SCS(name) \ - DEFINE_PER_CPU(unsigned long [SCS_SIZE/sizeof(long)], name) \ - DEFINE_SCS(irq_shadow_call_stack); #ifdef CONFIG_ARM_SDE_INTERFACE diff --git a/include/linux/scs.h b/include/linux/scs.h index 2fd3df50e93e..6dec390cf154 100644 --- a/include/linux/scs.h +++ b/include/linux/scs.h @@ -26,6 +26,10 @@ /* An illegal pointer value to mark the end of the shadow stack. */ #define SCS_END_MAGIC (0x5f6UL + POISON_POINTER_DELTA) +/* Allocate a static per-CPU shadow stack */ +#define DEFINE_SCS(name) \ + DEFINE_PER_CPU(unsigned long [SCS_SIZE/sizeof(long)], name) \ + #define task_scs(tsk) (task_thread_info(tsk)->scs_base) #define task_scs_sp(tsk) (task_thread_info(tsk)->scs_sp) |