1 #ifndef _LINUX_UNWIND_H
2 #define _LINUX_UNWIND_H
5 * Copyright (C) 2002-2006 Novell, Inc.
6 * Jan Beulich <jbeulich@novell.com>
7 * This code is released under version 2 of the GNU GPL.
9 * A simple API for unwinding kernel stacks. This is used for
10 * debugging and error reporting purposes. The kernel doesn't need
11 * full-blown stack unwinding with all the bells and whistles, so there
12 * is not much point in implementing the full Dwarf2 unwind API.
17 struct unwind_frame_info
{};
19 static inline void unwind_init(void) {}
20 static inline void unwind_setup(void) {}
24 static inline void *unwind_add_table(struct module
*mod
,
25 const void *table_start
,
26 unsigned long table_size
)
31 static inline void unwind_remove_table(void *handle
, int init_only
)
37 static inline int unwind_init_frame_info(struct unwind_frame_info
*info
,
38 struct task_struct
*tsk
,
39 const struct pt_regs
*regs
)
44 static inline int unwind_init_blocked(struct unwind_frame_info
*info
,
45 struct task_struct
*tsk
)
50 static inline int unwind_init_running(struct unwind_frame_info
*info
,
51 asmlinkage
int (*cb
)(struct unwind_frame_info
*,
58 static inline int unwind(struct unwind_frame_info
*info
)
63 static inline int unwind_to_user(struct unwind_frame_info
*info
)
68 #endif /* _LINUX_UNWIND_H */