diff --git a/kernel/fork.c b/kernel/fork.c
index ade237a963088b94b5a48216af2610a946bd501e..17921b0390b4f91113bcf8c9ccac5c1225751460 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -554,7 +554,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_long();
+	tsk->stack_canary = get_random_canary();
 #endif
 
 	/*