]> git.baikalelectronics.ru Git - kernel.git/commit
arm64: don't call C code with el0's fp register
authorJames Morse <james.morse@arm.com>
Thu, 10 Dec 2015 10:22:41 +0000 (10:22 +0000)
committerWill Deacon <will.deacon@arm.com>
Thu, 10 Dec 2015 12:08:09 +0000 (12:08 +0000)
commit47a9e9bb2cc333f05a96a11bf47dc9de5555b5f7
tree5e60d93b6b55bfaf31a7b7d2e1b9bde9021ef893
parent5d9407c67ddfb4862028c4f43b9c480c447e7cb8
arm64: don't call C code with el0's fp register

On entry from el0, we save all the registers on the kernel stack, and
restore them before returning. x29 remains unchanged when we call out
to C code, which will store x29 as the frame-pointer on the stack.

Instead, write 0 into x29 after entry from el0, to avoid any risk of
tracing into user space.

Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/kernel/entry.S