From 701c41be909697d5ab36f7604a1f3620c7d04abc Mon Sep 17 00:00:00 2001 From: Masami Hiramatsu Date: Fri, 20 Mar 2009 13:31:18 -0400 Subject: PR6930: stap: supports on-file flight recorder options Add on-file flight recorder options (the combination of -F and -o, and -S option) to stap command, and change manpages and NEWS. - Both of -F and -o is specified, stap passes -D option to staprun. - stap just passes -S option to staprun. --- session.h | 1 + 1 file changed, 1 insertion(+) (limited to 'session.h') diff --git a/session.h b/session.h index ec6c2e3e..820b819e 100644 --- a/session.h +++ b/session.h @@ -90,6 +90,7 @@ struct systemtap_session std::string module_name; std::string stapconf_name; std::string output_file; + std::string size_option; std::string cmd; int target_pid; int last_pass; -- cgit From b278033a7e4632a414502b63ba51fcce36f44f94 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Fri, 20 Mar 2009 16:35:06 -0700 Subject: Cache the tracepoint query results To use tracepoints, we build a "tracequery" module that compiles debuginfo for all available tracepoints in the user's kernel. That's a bit of a cumbersome step to do during pass-2 though. This change adds tracequery caching so we only need to compile it once. --- session.h | 1 + 1 file changed, 1 insertion(+) (limited to 'session.h') diff --git a/session.h b/session.h index 820b819e..cbbae6b2 100644 --- a/session.h +++ b/session.h @@ -117,6 +117,7 @@ struct systemtap_session std::string cache_path; std::string hash_path; std::string stapconf_path; + std::string tracequery_path; // dwarfless operation bool consult_symtab; -- cgit From 28f569c22b5a4ec666be5ccdf26fd194d3643c29 Mon Sep 17 00:00:00 2001 From: "Frank Ch. Eigler" Date: Fri, 27 Mar 2009 12:07:49 -0400 Subject: initialize skip_badvars=0. rererenag developers in session.h to do so in the future --- session.h | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) (limited to 'session.h') diff --git a/session.h b/session.h index cbbae6b2..aeeeacdf 100644 --- a/session.h +++ b/session.h @@ -74,8 +74,9 @@ struct statistic_decl struct systemtap_session { systemtap_session (); - // NB: new POD members likely need to be explicitly cleared in the ctor. - // See elaborate.cxx. + // NB: It is very important for all of the above (and below) fields + // to be cleared in the systemtap_session ctor (elaborate.cxx) + // and/or main.cxx(main). // command line args std::vector include_path; @@ -112,6 +113,10 @@ struct systemtap_session bool need_uprobes; bool load_only; // flight recorder mode + // NB: It is very important for all of the above (and below) fields + // to be cleared in the systemtap_session ctor (elaborate.cxx) + // and/or main.cxx(main). + // Cache data bool use_cache; std::string cache_path; @@ -128,6 +133,10 @@ struct systemtap_session // Skip bad $ vars bool skip_badvars; + // NB: It is very important for all of the above (and below) fields + // to be cleared in the systemtap_session ctor (elaborate.cxx) + // and/or main.cxx(main). + // temporary directory for module builds etc. // hazardous - it is "rm -rf"'d at exit std::string tmpdir; @@ -172,8 +181,10 @@ struct systemtap_session hrtimer_derived_probe_group* hrtimer_derived_probes; perfmon_derived_probe_group* perfmon_derived_probes; procfs_derived_probe_group* procfs_derived_probes; + // NB: It is very important for all of the above (and below) fields - // to be cleared in the systemtap_session ctor (elaborate.cxx). + // to be cleared in the systemtap_session ctor (elaborate.cxx) + // and/or main.cxx(main). // unparser data translator_output* op; @@ -189,6 +200,10 @@ struct systemtap_session std::set unwindsym_modules; struct module_cache* module_cache; + // NB: It is very important for all of the above (and below) fields + // to be cleared in the systemtap_session ctor (elaborate.cxx) + // and/or main.cxx(main). + std::set seen_errors; std::set seen_warnings; unsigned num_errors () { return seen_errors.size(); } @@ -200,7 +215,9 @@ struct systemtap_session void print_error_source (std::ostream&, std::string&, const token* tok); void print_warning (const std::string& w, const token* tok = 0); - // reNB: new POD members likely need to be explicitly cleared in the ctor. + // NB: It is very important for all of the above (and below) fields + // to be cleared in the systemtap_session ctor (elaborate.cxx) + // and/or main.cxx(main). }; -- cgit From e6fe60e7ac2b7068b97c828cee2502d34e77d89c Mon Sep 17 00:00:00 2001 From: Ananth N Mavinakayanahalli Date: Tue, 21 Apr 2009 17:07:22 +0530 Subject: From Prerna Saxena: Add the kprobe.function probe family --- session.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'session.h') diff --git a/session.h b/session.h index aeeeacdf..655d39e8 100644 --- a/session.h +++ b/session.h @@ -30,6 +30,7 @@ struct functiondecl; struct derived_probe; struct be_derived_probe_group; struct dwarf_derived_probe_group; +struct kprobe_derived_probe_group; struct uprobe_derived_probe_group; struct utrace_derived_probe_group; struct itrace_derived_probe_group; @@ -170,6 +171,7 @@ struct systemtap_session // session.probes vector. be_derived_probe_group* be_derived_probes; dwarf_derived_probe_group* dwarf_derived_probes; + kprobe_derived_probe_group* kprobe_derived_probes; uprobe_derived_probe_group* uprobe_derived_probes; utrace_derived_probe_group* utrace_derived_probes; itrace_derived_probe_group* itrace_derived_probes; -- cgit From 2035bcd40b17832439df0a1eb28403b99a71b74f Mon Sep 17 00:00:00 2001 From: Dave Brolley Date: Mon, 4 May 2009 16:05:22 -0400 Subject: Module signing and verification using a separate file for the module signature. --- session.h | 1 + 1 file changed, 1 insertion(+) (limited to 'session.h') diff --git a/session.h b/session.h index 655d39e8..151094b1 100644 --- a/session.h +++ b/session.h @@ -89,6 +89,7 @@ struct systemtap_session std::string architecture; std::string runtime_path; std::string data_path; + std::string cert_db_path; std::string module_name; std::string stapconf_name; std::string output_file; -- cgit