]>
Commit | Line | Data |
---|---|---|
878719e8 NH |
1 | /* |
2 | * Copyright (C) 1991, 1992 Linus Torvalds | |
3 | * Copyright (C) 2000, 2001, 2002 Andi Kleen, SuSE Labs | |
4 | */ | |
5 | ||
6 | #ifndef DUMPSTACK_H | |
7 | #define DUMPSTACK_H | |
8 | ||
9 | #ifdef CONFIG_X86_32 | |
10 | #define STACKSLOTS_PER_LINE 8 | |
11 | #define get_bp(bp) asm("movl %%ebp, %0" : "=r" (bp) :) | |
12 | #else | |
13 | #define STACKSLOTS_PER_LINE 4 | |
14 | #define get_bp(bp) asm("movq %%rbp, %0" : "=r" (bp) :) | |
15 | #endif | |
16 | ||
17 | extern unsigned long | |
18 | print_context_stack(struct thread_info *tinfo, | |
19 | unsigned long *stack, unsigned long bp, | |
20 | const struct stacktrace_ops *ops, void *data, | |
7ee991fb | 21 | unsigned long *end, int *graph); |
878719e8 NH |
22 | |
23 | extern void | |
24 | show_trace_log_lvl(struct task_struct *task, struct pt_regs *regs, | |
25 | unsigned long *stack, unsigned long bp, char *log_lvl); | |
26 | ||
27 | extern void | |
28 | show_stack_log_lvl(struct task_struct *task, struct pt_regs *regs, | |
29 | unsigned long *sp, unsigned long bp, char *log_lvl); | |
30 | ||
31 | extern unsigned int code_bytes; | |
878719e8 NH |
32 | |
33 | /* The form of the top of the frame on the stack */ | |
34 | struct stack_frame { | |
35 | struct stack_frame *next_frame; | |
36 | unsigned long return_address; | |
37 | }; | |
38 | #endif |