diff --git a/kernel/fork.c b/kernel/fork.c index 399aca51ff75725920a307c3eee01ca6e4df8a45..61667909ce837bcaaa378cbdb760938cdd41b46b 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -248,7 +248,11 @@ static unsigned long *alloc_thread_stack_node(struct task_struct *tsk, int node) struct page *page = alloc_pages_node(node, THREADINFO_GFP, THREAD_SIZE_ORDER); - return page ? page_address(page) : NULL; + if (likely(page)) { + tsk->stack = page_address(page); + return tsk->stack; + } + return NULL; #endif }