diff options
author | hunt <hunt> | 2007-01-31 20:13:02 +0000 |
---|---|---|
committer | hunt <hunt> | 2007-01-31 20:13:02 +0000 |
commit | 1b276fc2991255d65c28fa2df03b7b9ecc7d4f7b (patch) | |
tree | 09dddc7115d2691e05ee392c2316c0793013a709 /runtime/stack-s390.c | |
parent | dcc4fec4fbb6caddbc82c758f57c014cfc37d088 (diff) | |
download | systemtap-steved-1b276fc2991255d65c28fa2df03b7b9ecc7d4f7b.tar.gz systemtap-steved-1b276fc2991255d65c28fa2df03b7b9ecc7d4f7b.tar.xz systemtap-steved-1b276fc2991255d65c28fa2df03b7b9ecc7d4f7b.zip |
2007-01-31 Martin Hunt <hunt@redhat.com>
* string.c (_stp_string_init): Deleted.
(_stp_sprintf): Deleted.
(_stp_vsprintf): Deleted.
(_stp_string_cat_cstr): Deleted.
(_stp_string_cat_string): Deleted.
(_stp_string_cat_char): Deleted.
(_stp_string_ptr): Deleted.
(_stp_string_cat): Deleted.
(_stp_snprintf): Moved from vsprintf.c.
(_stp_vscnprintf): Moved from vsprintf.c.
* string.h (STP_STRING_SIZE): Deleted.
(STP_NUM_STRINGS): Deleted.
Remove all references to type "String".
* vsprintf.c (_stp_vscnprintf): Moved to string.c.
(_stp_snprintf): Moved to string.c
* sym.c (_stp_symbol_sprint): Replaced with
_stp_symbol_print, which writes to the print buffer.
(_stp_symbol_sprint_basic): Replaced with
_stp_symbol_snprint.
* runtime.h: Include io.c.
* stat-common.c: Use new _stp_print* functions.
* stat.c: Ditto.
* regs.c: Renamed to regs-ia64.c.
* current.c: Renamed regs.c.
* regs-ia64.c: New file (renamed from regs.c).
* stack.c (_stp_stack_sprint): Renamed _stp_stack_print
and now just prints to the print buffer. Calls
__stp_stack_print instead of __stp_stack_sprint.
(_stp_stack_snprint): New function. Calls _stp_stack_print and
then copies the print buffer into a string.
(_stp_stack_printj): Deleted.
(_stp_ustack_sprint): Deleted.
* stack-*.c: Rewritten to print instead of writing to strings.
Uses new _stp_print* functions.
* print.c (_stp_printf): Create new function instead of macro.
(_stp_print): Ditto.
(_stp_print_char): New function.
* map.c: Use _stp_print() and _stp_print_char()
instead of _stp_print_cstr().
* io.c (_stp_vlog): Use _stp_print() instead
of _stp_string_cat_cstr().
* copy.c (_stp_string_from_user): Deleted.
Diffstat (limited to 'runtime/stack-s390.c')
-rw-r--r-- | runtime/stack-s390.c | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/runtime/stack-s390.c b/runtime/stack-s390.c index c65de741..fcf634ed 100644 --- a/runtime/stack-s390.c +++ b/runtime/stack-s390.c @@ -1,5 +1,5 @@ /* -*- linux-c -*- - * ppc64 stack tracing functions + * s390 stack tracing functions * * This file is part of systemtap, and is free software. You can * redistribute it and/or modify it under the terms of the GNU General @@ -8,7 +8,7 @@ */ static unsigned long -__stp_show_stack (String str, unsigned long sp, unsigned long low, +__stp_show_stack (unsigned long sp, unsigned long low, unsigned long high, int verbose) { @@ -24,11 +24,11 @@ __stp_show_stack (String str, unsigned long sp, unsigned long low, sf = (struct stack_frame *) sp; ip = sf->gprs[8] & PSW_ADDR_INSN; if (verbose) { - _stp_sprintf(str, "[%016lx] [%016lx] ", sp, ip); - _stp_symbol_sprint(str, ip); - _stp_string_cat(str, "\n"); + _stp_printf("[%p] [%p] ", sp, ip); + _stp_symbol_print(ip); + _stp_print_char('\n'); }else{ - _stp_sprintf(str,"%lx ", ip); + _stp_printf("%p ", ip); } /* Follow the back_chain */ while (1) { @@ -41,11 +41,11 @@ __stp_show_stack (String str, unsigned long sp, unsigned long low, sf = (struct stack_frame *) sp; ip = sf->gprs[8] & PSW_ADDR_INSN; if (verbose) { - _stp_sprintf(str, "[%016lx] [%016lx] ", sp, ip); - _stp_symbol_sprint(str, ip); - _stp_string_cat(str, "\n"); + _stp_printf("[%p] [%p] ", sp, ip); + _stp_symbol_print(ip); + _stp_print_char('\n'); }else{ - _stp_sprintf(str,"%lx ", ip); + _stp_printf("%p ", ip); } } /* Zero backchain detected, check for interrupt frame. */ @@ -54,29 +54,29 @@ __stp_show_stack (String str, unsigned long sp, unsigned long low, return sp; regs = (struct pt_regs *) sp; if (verbose) { - _stp_sprintf(str, "[%016lx] [%016lx] ", sp, ip); - _stp_symbol_sprint(str, ip); - _stp_string_cat(str, "\n"); + _stp_printf("[%p] [%p] ", sp, ip); + _stp_symbol_print(ip); + _stp_print_char('\n'); }else{ - _stp_sprintf(str,"%lx ", ip); + _stp_printf("%p ", ip); } low = sp; sp = regs->gprs[15]; } } -static void __stp_stack_sprint (String str, struct pt_regs *regs, - int verbose, int levels) +static void __stp_stack_print (struct pt_regs *regs, + int verbose, int levels) { unsigned long *_sp = (unsigned long *)®_SP(regs); unsigned long sp = (unsigned long)_sp; // unsigned long sp = (unsigned long)*_sp; - sp = __stp_show_stack(str, sp, + sp = __stp_show_stack(sp, S390_lowcore.async_stack - ASYNC_SIZE, S390_lowcore.async_stack,verbose); - __stp_show_stack(str, sp, + __stp_show_stack(sp, S390_lowcore.thread_info, S390_lowcore.thread_info + THREAD_SIZE,verbose); } |