diff options
Diffstat (limited to 'arch/powerpc/kernel/misc_32.S')
| -rw-r--r-- | arch/powerpc/kernel/misc_32.S | 11 | 
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/misc_32.S b/arch/powerpc/kernel/misc_32.S index 094bd9821ad..998a1002860 100644 --- a/arch/powerpc/kernel/misc_32.S +++ b/arch/powerpc/kernel/misc_32.S @@ -694,6 +694,17 @@ _GLOBAL(kernel_thread)  	addi	r1,r1,16  	blr +#ifdef CONFIG_SMP +_GLOBAL(start_secondary_resume) +	/* Reset stack */ +	rlwinm	r1,r1,0,0,(31-THREAD_SHIFT)	/* current_thread_info() */ +	addi	r1,r1,THREAD_SIZE-STACK_FRAME_OVERHEAD +	li	r3,0 +	stw	r3,0(r1)		/* Zero the stack frame pointer	*/ +	bl	start_secondary +	b	. +#endif /* CONFIG_SMP */ +	  /*   * This routine is just here to keep GCC happy - sigh...   */  |