From: Daniel Micay Date: Thu, 4 May 2017 13:32:09 +0000 (-0400) Subject: stackprotector: Increase the per-task stack canary's random range from 32 bits to... X-Git-Tag: MMI-PSA29.97-13-9~5526^2~1 X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=5ea30e4e58040cfd6434c2f33dc3ea76e2c15b05;p=GitHub%2FMotorolaMobilityLLC%2Fkernel-slsi.git stackprotector: Increase the per-task stack canary's random range from 32 bits to 64 bits on 64-bit platforms The stack canary is an 'unsigned long' and should be fully initialized to random data rather than only 32 bits of random data. Signed-off-by: Daniel Micay Acked-by: Arjan van de Ven Acked-by: Rik van Riel Acked-by: Kees Cook Cc: Arjan van Ven Cc: Linus Torvalds Cc: Peter Zijlstra Cc: Thomas Gleixner Cc: kernel-hardening@lists.openwall.com Cc: stable@vger.kernel.org Link: http://lkml.kernel.org/r/20170504133209.3053-1-danielmicay@gmail.com Signed-off-by: Ingo Molnar --- diff --git a/kernel/fork.c b/kernel/fork.c index 3a4343cdfe90..d681f8f10d2d 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -536,7 +536,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node) set_task_stack_end_magic(tsk); #ifdef CONFIG_CC_STACKPROTECTOR - tsk->stack_canary = get_random_int(); + tsk->stack_canary = get_random_long(); #endif /*