Changes in kernel/generic/include/stacktrace.h [d32358f:257ceb1] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/stacktrace.h
rd32358f r257ceb1 27 27 */ 28 28 29 /** @addtogroup genericdebug 29 /** @addtogroup genericdebug 30 30 * @{ 31 31 */ … … 36 36 #define KERN_STACKTRACE_H_ 37 37 38 #include <arch/types.h>39 38 #include <typedefs.h> 40 39 41 /* Forward declaration s. */40 /* Forward declaration. */ 42 41 struct istate; 43 42 44 43 typedef struct { 45 bool (* frame_pointer_validate)(uintptr_t); 46 bool (* frame_pointer_prev)(uintptr_t, uintptr_t *); 47 bool (* return_address_get)(uintptr_t, uintptr_t *); 48 bool (* symbol_resolve)(uintptr_t, char **, uintptr_t *); 44 uintptr_t fp; 45 uintptr_t pc; 46 struct istate *istate; 47 } stack_trace_context_t; 48 49 typedef struct { 50 bool (* stack_trace_context_validate)(stack_trace_context_t *); 51 bool (* frame_pointer_prev)(stack_trace_context_t *, uintptr_t *); 52 bool (* return_address_get)(stack_trace_context_t *, uintptr_t *); 53 bool (* symbol_resolve)(uintptr_t, const char **, uintptr_t *); 49 54 } stack_trace_ops_t; 50 55 … … 54 59 extern void stack_trace(void); 55 60 extern void stack_trace_istate(struct istate *); 56 extern void stack_trace_ fp_pc(stack_trace_ops_t *, uintptr_t, uintptr_t);61 extern void stack_trace_ctx(stack_trace_ops_t *, stack_trace_context_t *); 57 62 58 63 /* … … 62 67 extern uintptr_t program_counter_get(void); 63 68 64 extern bool kernel_ frame_pointer_validate(uintptr_t);65 extern bool kernel_frame_pointer_prev( uintptr_t, uintptr_t *);66 extern bool kernel_return_address_get( uintptr_t, uintptr_t *);69 extern bool kernel_stack_trace_context_validate(stack_trace_context_t *); 70 extern bool kernel_frame_pointer_prev(stack_trace_context_t *, uintptr_t *); 71 extern bool kernel_return_address_get(stack_trace_context_t *, uintptr_t *); 67 72 68 extern bool uspace_ frame_pointer_validate(uintptr_t);69 extern bool uspace_frame_pointer_prev( uintptr_t, uintptr_t *);70 extern bool uspace_return_address_get( uintptr_t, uintptr_t *);73 extern bool uspace_stack_trace_context_validate(stack_trace_context_t *); 74 extern bool uspace_frame_pointer_prev(stack_trace_context_t *, uintptr_t *); 75 extern bool uspace_return_address_get(stack_trace_context_t *, uintptr_t *); 71 76 72 77 #endif
Note:
See TracChangeset
for help on using the changeset viewer.