summaryrefslogtreecommitdiffstats
path: root/runtime/staprun/symbols.c
diff options
context:
space:
mode:
authorFrank Ch. Eigler <fche@elastic.org>2007-10-12 18:13:07 -0400
committerFrank Ch. Eigler <fche@elastic.org>2007-10-12 18:13:07 -0400
commit8b64d9c2be16169b73a3d3230e736b7e50161478 (patch)
tree0d1e4e1946e4b57335e076a559c401362cf8093e /runtime/staprun/symbols.c
parentfc6d4679f2eb93d1d114ceb9d47fc9f3cc12aca7 (diff)
parent1969b5bca1098bb03f8bcffc5cc940102a67744c (diff)
downloadsystemtap-steved-8b64d9c2be16169b73a3d3230e736b7e50161478.tar.gz
systemtap-steved-8b64d9c2be16169b73a3d3230e736b7e50161478.tar.xz
systemtap-steved-8b64d9c2be16169b73a3d3230e736b7e50161478.zip
Merge branch 'master' of git://sources.redhat.com/git/systemtap
Diffstat (limited to 'runtime/staprun/symbols.c')
-rw-r--r--runtime/staprun/symbols.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/runtime/staprun/symbols.c b/runtime/staprun/symbols.c
index 61b56b2e..315362fa 100644
--- a/runtime/staprun/symbols.c
+++ b/runtime/staprun/symbols.c
@@ -140,7 +140,10 @@ err0:
}
#undef SECDIR
-void send_module (char *mname)
+/*
+ * For modules, we send the name, section names, and offsets
+ */
+static void send_module (char *mname)
{
char data[32768];
int len = get_sections(mname, data, sizeof(data));
@@ -152,6 +155,9 @@ void send_module (char *mname)
}
}
+/*
+ * Send either all modules, or a specific one.
+ */
int do_module (void *data)
{
struct _stp_module *mod = (struct _stp_module *)data;
@@ -183,6 +189,11 @@ static int compar(const void *p1, const void *p2)
#define MAX_SYMBOLS 32*1024
+/*
+ * Read /proc/kallsyms and send all kernel symbols to the
+ * systemtap module. Ignore module symbols; the systemtap module
+ * can access them directly.
+ */
void do_kernel_symbols(void)
{
FILE *kallsyms=NULL;