diff options
author | Martin Hunt <hunt@monkey.(none)> | 2008-04-15 21:10:34 -0400 |
---|---|---|
committer | Martin Hunt <hunt@monkey.(none)> | 2008-04-15 21:10:34 -0400 |
commit | 4f7a75f2cb3394290d1093a031546aa848ace929 (patch) | |
tree | 081546c0cd685ed58bc90c4903a7d954415300bf /runtime/stack.c | |
parent | 8558d3925ee2931b654a19f243bfa8b3be0bfc12 (diff) | |
download | systemtap-steved-4f7a75f2cb3394290d1093a031546aa848ace929.tar.gz systemtap-steved-4f7a75f2cb3394290d1093a031546aa848ace929.tar.xz systemtap-steved-4f7a75f2cb3394290d1093a031546aa848ace929.zip |
2.6.25 fixes and stack level limits.
Diffstat (limited to 'runtime/stack.c')
-rw-r--r-- | runtime/stack.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/runtime/stack.c b/runtime/stack.c index 772c5baf..23ac2edc 100644 --- a/runtime/stack.c +++ b/runtime/stack.c @@ -47,7 +47,7 @@ * @param regs A pointer to the struct pt_regs. */ -void _stp_stack_print(struct pt_regs *regs, int verbose, struct kretprobe_instance *pi) +void _stp_stack_print(struct pt_regs *regs, int verbose, struct kretprobe_instance *pi, int levels) { if (verbose) { /* print the current address */ @@ -66,7 +66,7 @@ void _stp_stack_print(struct pt_regs *regs, int verbose, struct kretprobe_instan else _stp_printf("%p ", (int64_t) REG_IP(regs)); - __stp_stack_print(regs, verbose, 0); + __stp_stack_print(regs, verbose, levels); } /** Writes stack backtrace to a string @@ -75,14 +75,14 @@ void _stp_stack_print(struct pt_regs *regs, int verbose, struct kretprobe_instan * @param regs A pointer to the struct pt_regs. * @returns void */ -void _stp_stack_snprint(char *str, int size, struct pt_regs *regs, int verbose, struct kretprobe_instance *pi) +void _stp_stack_snprint(char *str, int size, struct pt_regs *regs, int verbose, struct kretprobe_instance *pi, int levels) { /* To get a string, we use a simple trick. First flush the print buffer, */ /* then call _stp_stack_print, then copy the result into the output string */ /* and clear the print buffer. */ _stp_pbuf *pb = per_cpu_ptr(Stp_pbuf, smp_processor_id()); _stp_print_flush(); - _stp_stack_print(regs, verbose, pi); + _stp_stack_print(regs, verbose, pi, levels); strlcpy(str, pb->buf, size < (int)pb->len ? size : (int)pb->len); pb->len = 0; } |