root/arch/nds32/include/asm/stacktrace.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 /* Copyright (C) 2008-2018 Andes Technology Corporation */
   3 
   4 #ifndef __ASM_STACKTRACE_H
   5 #define __ASM_STACKTRACE_H
   6 
   7 /* Kernel callchain */
   8 struct stackframe {
   9         unsigned long fp;
  10         unsigned long sp;
  11         unsigned long lp;
  12 };
  13 
  14 /*
  15  * struct frame_tail: User callchain
  16  * IMPORTANT:
  17  * This struct is used for call-stack walking,
  18  * the order and types matters.
  19  * Do not use array, it only stores sizeof(pointer)
  20  *
  21  * The details can refer to arch/arm/kernel/perf_event.c
  22  */
  23 struct frame_tail {
  24         unsigned long stack_fp;
  25         unsigned long stack_lp;
  26 };
  27 
  28 /* For User callchain with optimize for size */
  29 struct frame_tail_opt_size {
  30         unsigned long stack_r6;
  31         unsigned long stack_fp;
  32         unsigned long stack_gp;
  33         unsigned long stack_lp;
  34 };
  35 
  36 extern void
  37 get_real_ret_addr(unsigned long *addr, struct task_struct *tsk, int *graph);
  38 
  39 #endif /* __ASM_STACKTRACE_H */

/* [<][>][^][v][top][bottom][index][help] */