From fb16f8fece2a2d96cc66de5738bdf578a21fcaae Mon Sep 17 00:00:00 2001 From: Wenji Huang Date: Mon, 11 Jan 2010 13:01:54 +0800 Subject: Add stack walking function for 2.6.33 * runtime/stack.c (walk_context_stack): New function. (print_stack_ops): Add function pointer. --- runtime/stack.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/runtime/stack.c b/runtime/stack.c index 612fa010..7dfeb76a 100644 --- a/runtime/stack.c +++ b/runtime/stack.c @@ -94,11 +94,25 @@ static void print_stack_address(void *data, unsigned long addr, int reliable) _stp_func_print(addr, sdata->verbose, 0, NULL); } +#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,32) +static unsigned long +walk_context_stack(struct thread_info *tinfo, + unsigned long *stack, unsigned long bp, + const struct stacktrace_ops *ops, void *data, + unsigned long *end, int *graph) +{ + return 0 ; +} +#endif + static const struct stacktrace_ops print_stack_ops = { .warning = print_stack_warning, .warning_symbol = print_stack_warning_symbol, .stack = print_stack_stack, .address = print_stack_address, +#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,32) + .walk_stack = walk_context_stack, +#endif }; static void _stp_stack_print_fallback(unsigned long stack, int verbose, int levels) -- cgit