]> git.baikalelectronics.ru Git - kernel.git/commitdiff
arm64: Mark __stack_chk_guard as __ro_after_init
authorDan Li <ashimida@linux.alibaba.com>
Tue, 14 Sep 2021 09:44:02 +0000 (17:44 +0800)
committerCatalin Marinas <catalin.marinas@arm.com>
Thu, 16 Sep 2021 16:59:17 +0000 (17:59 +0100)
__stack_chk_guard is setup once while init stage and never changed
after that.

Although the modification of this variable at runtime will usually
cause the kernel to crash (so does the attacker), it should be marked
as __ro_after_init, and it should not affect performance if it is
placed in the ro_after_init section.

Signed-off-by: Dan Li <ashimida@linux.alibaba.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Link: https://lore.kernel.org/r/1631612642-102881-1-git-send-email-ashimida@linux.alibaba.com
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/kernel/process.c

index 1a1213cca1731b8aae26fc646b10eaf393b7ece8..40adb8cdbf5af667d595abe5908cb81723d89722 100644 (file)
@@ -57,7 +57,7 @@
 
 #if defined(CONFIG_STACKPROTECTOR) && !defined(CONFIG_STACKPROTECTOR_PER_TASK)
 #include <linux/stackprotector.h>
-unsigned long __stack_chk_guard __read_mostly;
+unsigned long __stack_chk_guard __ro_after_init;
 EXPORT_SYMBOL(__stack_chk_guard);
 #endif