summaryrefslogtreecommitdiffstats
path: root/testsuite
diff options
context:
space:
mode:
authorMark Wielaard <mjw@redhat.com>2009-04-02 18:42:38 +0200
committerMark Wielaard <mjw@redhat.com>2009-04-02 18:42:38 +0200
commitb2b336288ce9e92a21efe7dcd314f604bc97be29 (patch)
treeb2a9b34d783aca93dfba67dbe93401102cd90eba /testsuite
parent15a78144473940a4e7c685cc57ba09a92f2293c6 (diff)
downloadsystemtap-steved-b2b336288ce9e92a21efe7dcd314f604bc97be29.tar.gz
systemtap-steved-b2b336288ce9e92a21efe7dcd314f604bc97be29.tar.xz
systemtap-steved-b2b336288ce9e92a21efe7dcd314f604bc97be29.zip
PR6580: Implement symname, symdata and modname context functions.
This adds a couple of the suggested context/stack revamp functions from PR6580. In particular it replaces the symbolname() function that sneaked in with the pr6866 branch merge with the suggested symname(). * runtime/sym.c (_stp_mod_sec_lookup): Make section optional. (_stp_symbol_snprint): Provide a way to get optional module info. * tapset/context-symbols.stp: Replace symbolname() with symname(), add modname() and symdata(). (probemod): Implement pc based fallback. * tapset/context-unwind.stp (caller): Adjust for _stp_symbol_snprint change. * testsuite/systemtap.context/usymbols.exp: Use new symname. * testsuite/buildok/modname.stp: New test. * testsuite/buildok/symdata.stp: Likewise. * testsuite/buildok/symname.stp: Likewise.
Diffstat (limited to 'testsuite')
-rwxr-xr-xtestsuite/buildok/modname.stp8
-rwxr-xr-xtestsuite/buildok/symdata.stp8
-rwxr-xr-xtestsuite/buildok/symname.stp8
-rw-r--r--testsuite/systemtap.context/usymbols.exp2
4 files changed, 25 insertions, 1 deletions
diff --git a/testsuite/buildok/modname.stp b/testsuite/buildok/modname.stp
new file mode 100755
index 00000000..02229301
--- /dev/null
+++ b/testsuite/buildok/modname.stp
@@ -0,0 +1,8 @@
+#! stap -p4
+#
+# Test the translatability for modname()
+#
+probe begin
+{
+ log(modname(0))
+}
diff --git a/testsuite/buildok/symdata.stp b/testsuite/buildok/symdata.stp
new file mode 100755
index 00000000..d7e803a9
--- /dev/null
+++ b/testsuite/buildok/symdata.stp
@@ -0,0 +1,8 @@
+#! stap -p4
+#
+# Test the translatability for symdata()
+#
+probe begin
+{
+ log(symdata(0))
+}
diff --git a/testsuite/buildok/symname.stp b/testsuite/buildok/symname.stp
new file mode 100755
index 00000000..e082d1a5
--- /dev/null
+++ b/testsuite/buildok/symname.stp
@@ -0,0 +1,8 @@
+#! stap -p4
+#
+# Test the translatability for symname()
+#
+probe begin
+{
+ log(symname(0))
+}
diff --git a/testsuite/systemtap.context/usymbols.exp b/testsuite/systemtap.context/usymbols.exp
index 82f68b67..8af20126 100644
--- a/testsuite/systemtap.context/usymbols.exp
+++ b/testsuite/systemtap.context/usymbols.exp
@@ -35,7 +35,7 @@ set testscript {
probe syscall.rt_sigaction {
if (pid() == target() && execname() == "%s") {
handler = $act->sa_handler;
- printf("handler: %%s\n", symbolname(handler));
+ printf("handler: %%s\n", symname(handler));
}
}
/* track through uprobes, so as to make sure we have the symbols */