123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- From 8ac39e2974d9f1395969a500e692f45717c4ccf2 Mon Sep 17 00:00:00 2001
- From: Lukas Auer <lukas.auer@aisec.fraunhofer.de>
- Date: Sun, 17 Mar 2019 19:28:40 +0100
- Subject: [PATCH 09/18] riscv: hang if relocation of secondary harts fails
- Print an error message and hang if smp_call_function() returns an error,
- indicating that relocation of the secondary harts has failed.
- Signed-off-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de>
- Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
- Tested-by: Bin Meng <bmeng.cn@gmail.com>
- Reviewed-by: Anup Patel <anup.patel@wdc.com>
- ---
- arch/riscv/cpu/start.S | 13 ++++++++++++-
- 1 file changed, 12 insertions(+), 1 deletion(-)
- diff --git a/arch/riscv/cpu/start.S b/arch/riscv/cpu/start.S
- index 5ac899b141..a4433fbd6b 100644
- --- a/arch/riscv/cpu/start.S
- +++ b/arch/riscv/cpu/start.S
- @@ -33,6 +33,10 @@
- #define SYM_SIZE 0x18
- #endif
-
- +.section .data
- +secondary_harts_relocation_error:
- + .ascii "Relocation of secondary harts has failed, error %d\n"
- +
- .section .text
- .globl _start
- _start:
- @@ -274,8 +278,15 @@ relocate_secondary_harts:
- mv a2, s3
- jal smp_call_function
-
- + /* hang if relocation of secondary harts has failed */
- + beqz a0, 1f
- + mv a1, a0
- + la a0, secondary_harts_relocation_error
- + jal printf
- + jal hang
- +
- /* restore relocation offset */
- - mv t6, s5
- +1: mv t6, s5
- #endif
-
- /*
- --
- 2.21.0
|