Searched hist:"18 e8c5336c7e18b0959be9fad78777fe1cc0383b" (Results 1 – 2 of 2) sorted by relevance
| /optee_os/core/arch/arm/kernel/ |
| H A D | unwind_arm32.c | 18e8c5336c7e18b0959be9fad78777fe1cc0383b Mon Oct 10 16:25:13 UTC 2016 Jerome Forissier <jerome.forissier@linaro.org> arm32: unwind: print_stack(): fix unwind_state
print_stack() must save r7 and r11 in the unwind_state structure. Not doing so will likely result in a crash dunring unwind. Register r7 is typically used as a frame pointer by GCC in Thumb2 mode, while r11 (a.k.a. fp) is the frame pointer in ARM mode.
Also, set PC to the beginning of print_stack() since there's no point in going further inside the function.
Fixes: https://github.com/OP-TEE/optee_os/issues/1069 Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey) Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (QEMU) Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
|
| /optee_os/core/arch/arm/include/ |
| H A D | arm32.h | 18e8c5336c7e18b0959be9fad78777fe1cc0383b Mon Oct 10 16:25:13 UTC 2016 Jerome Forissier <jerome.forissier@linaro.org> arm32: unwind: print_stack(): fix unwind_state
print_stack() must save r7 and r11 in the unwind_state structure. Not doing so will likely result in a crash dunring unwind. Register r7 is typically used as a frame pointer by GCC in Thumb2 mode, while r11 (a.k.a. fp) is the frame pointer in ARM mode.
Also, set PC to the beginning of print_stack() since there's no point in going further inside the function.
Fixes: https://github.com/OP-TEE/optee_os/issues/1069 Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey) Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (QEMU) Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
|