Merge tag 'soc-fixes-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[linux-2.6-microblaze.git] / arch / loongarch / kernel / unwind_guess.c
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Copyright (C) 2022 Loongson Technology Corporation Limited
4  */
5 #include <asm/unwind.h>
6
7 unsigned long unwind_get_return_address(struct unwind_state *state)
8 {
9         return __unwind_get_return_address(state);
10 }
11 EXPORT_SYMBOL_GPL(unwind_get_return_address);
12
13 void unwind_start(struct unwind_state *state, struct task_struct *task,
14                     struct pt_regs *regs)
15 {
16         __unwind_start(state, task, regs);
17         if (!unwind_done(state) && !__kernel_text_address(state->pc))
18                 unwind_next_frame(state);
19 }
20 EXPORT_SYMBOL_GPL(unwind_start);
21
22 bool unwind_next_frame(struct unwind_state *state)
23 {
24         return default_next_frame(state);
25 }
26 EXPORT_SYMBOL_GPL(unwind_next_frame);