diff options
author | Dave Brolley <brolley@redhat.com> | 2009-04-02 12:38:15 -0400 |
---|---|---|
committer | Dave Brolley <brolley@redhat.com> | 2009-04-02 12:38:15 -0400 |
commit | 2f53f831393d2f0db3d54260c2a7882eff17905c (patch) | |
tree | ba140bbad1fd4acaa7c2253949a2b2ade53952a2 /tapset | |
parent | 2f54c4fe5a3aa21b4d5c38edabf83f3cdad0177d (diff) | |
parent | 15a78144473940a4e7c685cc57ba09a92f2293c6 (diff) | |
download | systemtap-steved-2f53f831393d2f0db3d54260c2a7882eff17905c.tar.gz systemtap-steved-2f53f831393d2f0db3d54260c2a7882eff17905c.tar.xz systemtap-steved-2f53f831393d2f0db3d54260c2a7882eff17905c.zip |
Merge branch 'master' of git://sources.redhat.com/git/systemtap
Conflicts:
configure
Diffstat (limited to 'tapset')
-rw-r--r-- | tapset/context-symbols.stp | 7 | ||||
-rw-r--r-- | tapset/context-unwind.stp | 3 | ||||
-rw-r--r-- | tapset/i686/syscalls.stp | 2 |
3 files changed, 9 insertions, 3 deletions
diff --git a/tapset/context-symbols.stp b/tapset/context-symbols.stp index a3aae408..4c200aa8 100644 --- a/tapset/context-symbols.stp +++ b/tapset/context-symbols.stp @@ -66,7 +66,7 @@ function probefunc:string () %{ /* pure */ #else ((unsigned long)REG_IP(CONTEXT->regs) >= (unsigned long)PAGE_OFFSET)) { #endif - _stp_symbol_snprint(THIS->__retvalue, MAXSTRINGLEN, REG_IP(CONTEXT->regs)); + _stp_symbol_snprint(THIS->__retvalue, MAXSTRINGLEN, REG_IP(CONTEXT->regs), current); if (THIS->__retvalue[0] == '.') /* powerpc symbol has a dot*/ strlcpy(THIS->__retvalue,THIS->__retvalue + 1,MAXSTRINGLEN); } else { @@ -94,3 +94,8 @@ function probemod:string () %{ /* pure */ THIS->__retvalue[0] = '\0'; } %} + +function symbolname:string (addr:long) %{ /* pure */ + _stp_symbol_snprint(THIS->__retvalue, MAXSTRINGLEN, THIS->addr, + current); +%} diff --git a/tapset/context-unwind.stp b/tapset/context-unwind.stp index 90d4e0f4..a976f8b6 100644 --- a/tapset/context-unwind.stp +++ b/tapset/context-unwind.stp @@ -56,7 +56,8 @@ function backtrace:string () %{ /* pure */ function caller:string() %{ /* pure */ if (CONTEXT->pi) _stp_symbol_snprint( THIS->__retvalue, MAXSTRINGLEN, - (unsigned long)_stp_ret_addr_r(CONTEXT->pi)); + (unsigned long)_stp_ret_addr_r(CONTEXT->pi), + current); else strlcpy(THIS->__retvalue,"unknown",MAXSTRINGLEN); %} diff --git a/tapset/i686/syscalls.stp b/tapset/i686/syscalls.stp index 8e69f622..2a89c19d 100644 --- a/tapset/i686/syscalls.stp +++ b/tapset/i686/syscalls.stp @@ -119,7 +119,7 @@ probe syscall.set_zone_reclaim.return = # probe syscall.sigaltstack = kernel.function("sys_sigaltstack") { name = "sigaltstack" - ussp = %( kernel_vr < "2.6.25" %? $ebx %: $bx %) + ussp = %( kernel_vr < "2.6.25" %? $ebx %: %( kernel_vr < "2.6.29" %? $bx %: $regs->bx %) %) argstr = sprintf("%p", ussp) } probe syscall.sigaltstack.return = kernel.function("sys_sigaltstack").return { |