aboutsummaryrefslogtreecommitdiffstats
path: root/arch/xtensa/kernel/asm-offsets.c
diff options
context:
space:
mode:
authorMax Filippov <jcmvbkbc@gmail.com>2017-03-27 02:44:47 -0700
committerMax Filippov <jcmvbkbc@gmail.com>2017-12-16 22:37:07 -0800
commit40d1a07b333ef1f7fce11ee20b8f4281d1a75fb9 (patch)
tree4855103872087025010742caa2ec0818f91f10ee /arch/xtensa/kernel/asm-offsets.c
parentxtensa: print hardware config ID on startup (diff)
downloadlinux-dev-40d1a07b333ef1f7fce11ee20b8f4281d1a75fb9.tar.xz
linux-dev-40d1a07b333ef1f7fce11ee20b8f4281d1a75fb9.zip
xtensa: enable stack protector
The implementation is adopted from the ARM arch. GCC 7.3, 8 or newer is required for building the xtensa kernel with SSP. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Diffstat (limited to 'arch/xtensa/kernel/asm-offsets.c')
-rw-r--r--arch/xtensa/kernel/asm-offsets.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/xtensa/kernel/asm-offsets.c b/arch/xtensa/kernel/asm-offsets.c
index bcb5beb81177..3b119b372efd 100644
--- a/arch/xtensa/kernel/asm-offsets.c
+++ b/arch/xtensa/kernel/asm-offsets.c
@@ -76,6 +76,9 @@ int main(void)
DEFINE(TASK_PID, offsetof (struct task_struct, pid));
DEFINE(TASK_THREAD, offsetof (struct task_struct, thread));
DEFINE(TASK_THREAD_INFO, offsetof (struct task_struct, stack));
+#ifdef CONFIG_CC_STACKPROTECTOR
+ DEFINE(TASK_STACK_CANARY, offsetof(struct task_struct, stack_canary));
+#endif
DEFINE(TASK_STRUCT_SIZE, sizeof (struct task_struct));
/* offsets in thread_info struct */