summaryrefslogtreecommitdiff
path: root/arch/arm64
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2016-03-03 16:31:32 (GMT)
committerCatalin Marinas <catalin.marinas@arm.com>2016-03-04 18:12:23 (GMT)
commitcd1b76bb73d0f735cc9aa076c121fd172752445b (patch)
tree2f5fa99d21362a097f19aa402d5a69bf4e0a5d42 /arch/arm64
parent1cc6ed90dd7313055dec0174e2cda745ebadd6b0 (diff)
downloadlinux-cd1b76bb73d0f735cc9aa076c121fd172752445b.tar.xz
arm64: efi: add missing frame pointer assignment
The prologue of the EFI entry point pushes x29 and x30 onto the stack but fails to create the stack frame correctly by omitting the assignment of x29 to the new value of the stack pointer. So fix that. Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64')
-rw-r--r--arch/arm64/kernel/efi-entry.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm64/kernel/efi-entry.S b/arch/arm64/kernel/efi-entry.S
index f82036e..cae3112 100644
--- a/arch/arm64/kernel/efi-entry.S
+++ b/arch/arm64/kernel/efi-entry.S
@@ -35,6 +35,7 @@ ENTRY(entry)
* for image_addr variable passed to efi_entry().
*/
stp x29, x30, [sp, #-32]!
+ mov x29, sp
/*
* Call efi_entry to do the real work.