Commit c2b4dd41 authored by Vladimir Murzin's avatar Vladimir Murzin Committed by Zheng Zengkai
Browse files

ARM: 9160/1: NOMMU: Reload __secondary_data after PROCINFO_INITFUNC

mainline inclusion
from mainline-v5.16-rc7
commit 7202216a
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I634EK
CVE: NA

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=7202216a6f34d571a22274e729f841256bf8b1ef



--------------------------------

__secondary_data used to reside in r7 around call to
PROCINFO_INITFUNC. After commit 95731b8e ("ARM: 9059/1: cache-v7:
get rid of mini-stack") r7 is used as a scratch register, so we have
to reload __secondary_data before we setup the stack pointer.

conflict:
	arch/arm/kernel/head-nommu.S

Fixes: 95731b8e ("ARM: 9059/1: cache-v7: get rid of mini-stack")
Signed-off-by: default avatarVladimir Murzin <vladimir.murzin@arm.com>
Signed-off-by: default avatarRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Signed-off-by: default avatarZhang Jianhua <chris.zjh@huawei.com>
Signed-off-by: default avatarZheng Zengkai <zhengzengkai@huawei.com>
parent 5d96d394
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -114,6 +114,7 @@ ENTRY(secondary_startup)
	add	r12, r12, r10
	ret	r12
1:	bl	__after_proc_init
	ldr	r7, __secondary_data		@ reload r7
	ldr	sp, [r7, #12]			@ set up the stack pointer
	mov	fp, #0
	b	secondary_start_kernel