Message ID | 20240508022445.6131-1-gaoshanliukou@163.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 6ad8735994b854b23c824dd6b1dd2126e893a3b4 |
Headers | show |
Series | [V3] riscv: set trap vector earlier | expand |
Hello: This patch was applied to riscv/linux.git (for-next) by Palmer Dabbelt <palmer@rivosinc.com>: On Wed, 8 May 2024 10:24:45 +0800 you wrote: > From: "yang.zhang" <yang.zhang@hexintek.com> > > The exception vector of the booting hart is not set before enabling > the mmu and then still points to the value of the previous firmware, > typically _start. That makes it hard to debug setup_vm() when bad > things happen. So fix that by setting the exception vector earlier. > > [...] Here is the summary with links: - [V3] riscv: set trap vector earlier https://git.kernel.org/riscv/c/6ad8735994b8 You are awesome, thank you!
hi: Yeah, thanks. At 2024-07-15 04:30:33, patchwork-bot+linux-riscv@kernel.org wrote: >Hello: > >This patch was applied to riscv/linux.git (for-next) >by Palmer Dabbelt <palmer@rivosinc.com>: > >On Wed, 8 May 2024 10:24:45 +0800 you wrote: >> From: "yang.zhang" <yang.zhang@hexintek.com> >> >> The exception vector of the booting hart is not set before enabling >> the mmu and then still points to the value of the previous firmware, >> typically _start. That makes it hard to debug setup_vm() when bad >> things happen. So fix that by setting the exception vector earlier. >> >> [...] > >Here is the summary with links: > - [V3] riscv: set trap vector earlier > https://git.kernel.org/riscv/c/6ad8735994b8 > >You are awesome, thank you! >-- >Deet-doot-dot, I am a bot. >https://korg.docs.kernel.org/patchwork/pwbot.html >
diff --git a/arch/riscv/kernel/head.S b/arch/riscv/kernel/head.S index 4236a69c35cb..03dc440e643e 100644 --- a/arch/riscv/kernel/head.S +++ b/arch/riscv/kernel/head.S @@ -300,6 +300,9 @@ SYM_CODE_START(_start_kernel) #else mv a0, a1 #endif /* CONFIG_BUILTIN_DTB */ + /* Set trap vector to spin forever to help debug */ + la a3, .Lsecondary_park + csrw CSR_TVEC, a3 call setup_vm #ifdef CONFIG_MMU la a0, early_pg_dir