| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* buildok/eighteen.stp: Fix for 2.6.18.
* buildok/two.stp: Ditto.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* session.h (struct systemtap_session): Add kernel_base_release
to store the kernel version without the -NNN suffix.
* main.cxx (main): Generate and use kernel_base_release.
* parse.cxx (eval_pp_conditional): Use kernel_base_release.
* tapsets.cxx (profile_derived_probe::profile_derived_probe):
Use kernel_base_release.
* tapsets.cxx (timer_builder::build): Support a wide variety of
timer varients -- jiffies, s/sec, ms/msec, us/usec, ns/nsec, and
hz. Use hrtimers automatically on kernels that have it.
(timer_builder::register_patterns): Bind all of the new timer
varients in one easy place.
(register_standard_tapsets): Call timer_builder::register_patterns.
(struct hrtimer_builder): Removed since timer_builder is generic.
* stapprobes.5.in: Document new timer.* functionality.
* tapsets.cxx (hrtimer_derived_probe_group::emit_probes): Add a
shared global for the actual hrtimer resolution, _stp_hrtimer_res.
(hrtimer_derived_probe_group::emit_module): Init _stp_hrtimer_res.
(hrtimer_derived_probe::emit_interval): Limit intervals at a
minimum to the hrtimer's actual resolution.
(hrtimer_derived_probe::emit_probe_entries): Forward timers
based on previous expiration instead of restarting relative.
testsuite/
* buildok/fourteen.stp: Test new timer functionality.
|
|
|
|
|
| |
* systemtap.samples/args.exp: Looks for 'staprun' instead of
'stpd'.
|
|
|
|
| |
* test.tcl: Looks for 'staprun' instead of 'stpd'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 3233
./
* stapfuncs.5.in: Document new gettimeofday_ns.
runtime/
* time.c (stp_time_t): Use ns for the base time, and freq is now kHz.
(__stp_estimate_cpufreq): Compute kHz instead of MHz.
(__stp_time_timer_callback, __stp_init_time): Compute base in ns.
(__stp_time_cpufreq_callback): Record kHz instead of MHz.
(_stp_init_time): Record kHz, and disable preemption to avoid a race
in the cpufreq notifier.
(_stp_gettimeofday_ns): Converted from _stp_gettimeofday_us.
tapset/
* timestamp.stp (gettimeofday_ns): New function
(gettimeofday_us, gettimeofday_ms, gettimeofday_s):
Use gettimeofday_ns as the base unit.
testsuite/
* buildok/timestamp.stp: add gettimeofday_ns test.
|
| |
|
| |
|
|
|
|
| |
* Added .cvsignore file.
|
| |
|
|
|
|
|
| |
* lib/systemtap.exp (stap_run_batch): New helper routine.
* systemtap.pass1-4/*.exp: Use it instead of catch/exec/>>& hack.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add basic support for initialized globals.
* parse.cxx (parse_global): Parse initialization clause, implement
by rewriting to "probe begin { var = value }".
* parse.h: Corresponding changes.
* stap.1.in: Document optional initialization.
2006-09-06 Frank Ch. Eigler <fche@elastic.org>
* parseok/eighteen.stp, semok/twentythree.stp: New files for
testing initialized globals.
|
| |
|
|
|
|
|
|
|
|
| |
* lib/stap_run.exp: Check for existence of installtest_p
before running it. This reenables running individual tests
with runtest.
* lib/stap_run2.exp: Ditto.
* lib/stap_run_binary.exp: Ditto.
|
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am (dist-hook): Make "make dist" dist.
* Makefile.in: Regenerated.
[testsuite]
2006-08-12 Frank Ch. Eigler <fche@elastic.org>
* Makefile.am (clean-local): Clean up dejagnu turds.
* Makefile.in: Regenerated.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac, Makefile.am: Descend into testsuite/
directory. Remove local test logic.
* configure, Makefile.in: Regenerated.
* runtest.sh: Not yet removed.
* HACKING: Update for new testsuite layout.
2006-08-12 Frank Ch. Eigler <fche@elastic.org>
* all: Reorganized old pass-1..4 tests one dejagnu bucket.
Moved over old pass-5 tests, except for disabled syscalls tests.
* Makefile (installcheck): New target for running pass-1..5
tests against installed systemtap.
|
|
|
|
| |
* testsuite/buildok/iolock_test.stp: Updated for ioblock.stp
|
|
|
|
|
|
|
|
|
|
|
|
| |
* stapprobes.5.in, testsuite/buildok/memory.stp: move pagefault
to vm.* namespace
tapset/
* memory.stp: move pagefault to vm.* namespace, and add many other
virtual-memory themed probes.
tapset/LKET/
* pagefault.stp: move pagefault to vm.* namespace
|
|
|
|
|
|
|
|
|
| |
* tapset/signal.stp: Create a new tapset that addresses process signals.
Much of this was contributed by Manoj Pattabhiraman (IBM).
* tapset/process.stp: Remove aliases that now belong in signal tapset
* examples/small_demos/proc_snoop.stp,
testsuite/buildok/process_test.stp: Rename process.signal_* to
new signal.* tapset.
|
|
|
|
|
|
| |
* tapset/context.stp (probemod): New function.
* stapfuncs.5.in: Document it.
* testsuite/buildok/probemod.stp: Test it.
|
| |
|
|
|
|
|
| |
* testsuite/buildok/scsi.stp: Only run the scsi test if the scsi
kernel subsystem is running.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* parse.cxx (parser::expect_unknown2): New function that looks for
2 possible token types.
* parse.cxx (parser::expect_ident_or_keyword): New function that
calls parser::expect_unknown2.
* parse.cxx (parser::parse_symbol): Calls
parser::expect_ident_or_keyword to allow keywords to appear when
expanding target symbols (Bugzilla #2913).
* parse.h: Added prototypes for parser::expect_unknown2 and
parser::expect_ident_or_keyword.
* testsuite/parseok/seventeen.stp: New test to check for allowing
keywords when expanding target symbols.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tapsets.cxx (dwflpp::express_as_string): New function.
Extracted from dwflpp::literal_stmt_for_local() so that
dwflpp::literal_stmt_for_return() could also call it.
(dwflpp::literal_stmt_for_local): Portion extracted to create
dwflpp::express_as_string().
(dwflpp::literal_stmt_for_return): New function. Adds support for
new symbolic access ("$return") to return value in .return
probes. Fixes PR 1132.
(target_variable_flavour_calculating_visitor::visit_target_symbol):
Calls dwflpp::literal_stmt_for_return() when in a return probe and
the variable name is "$return".
(dwarf_var_expanding_copy_visitor::visit_target_symbol): Ditto.
* stapfuncs.5.in: Noted that the retval() function is deprecated.
* stapprobes.5.in: Corrected the name of the return value
variable.
* tapset/return.stp: Marked the retval() function as deprecated.
* testsuite/semko/return01.stp: Added new test.
* testsuite/semko/return02.stp: Ditto.
|
|
|
|
|
|
|
|
| |
PR 2645 cont'd.
* elaborate.cxx (derive_probes): Pass down optional flag
from alias reference to expansion.
* testsuite/semok/twentytwo.stp: Test passing-down.
* stapprobes.5.in: Specify passing-down property of optional flag.
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2645 cont'd.
* elaborate.cxx (find_and_build): Support optional wildcards too.
(derive_probes): Change last argument to indicate optionalness of
parent probe point (alias reference).
(alias_expansion_builder): Shrink epilogue-mode alias body copying.
Pass along alias reference optionality.
* elaborate.h: Corresponding changes.
* testsuite/semko/thirtyfive.stp, semok/twentytwo.stp: New tests.
|
|
|
|
|
| |
* testsuite/buildok/process_test.stp: add signal_handle test
* examples/small_demos/proc_snoop.stp: log signal_handle
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2645.
* stapprobes.5.in: Document "?" probe point suffix.
* parse.cxx (parse_probe_point): Recognize "?" optional suffix.
* elaborate.cxx (derive_probes): Observe probe_point->optional.
* staptree.h, staptree.cxx: Corresponding changes.
* tapsets.cxx (never_derived_probe, never_builder): New classes.
(register_standard_tapsets): Support "never" probe point.
* testsuite/buildok/six.stp, parseok/five.stp: Modifed tests.
* translate.cxx (emit_module_init): Format "-t" (benchmarking)
cycle-time reports similarly to "-v" (verbose) times.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* main.cxx (usage): Added exitcode parameter.
(main): Improved a few error messages. Also, when an error is
given, stap now always exits with a status of 1.
* testsuite/buildok/cmdline01.stp: New test.
* testsuite/parseko/cmdline01.stp: Ditto.
* testsuite/parseko/cmdline02.stp: Ditto.
* testsuite/parseko/cmdline03.stp: Ditto.
* testsuite/parseko/cmdline04.stp: Ditto.
* testsuite/parseko/cmdline05.stp: Ditto.
* testsuite/parseko/cmdline06.stp: Ditto.
* testsuite/parseok/cmdline01.stp: Ditto.
* testsuite/parseok/cmdline02.stp: Ditto.
|
|
|
|
| |
* testsuite/semok/twentyone.stp: New file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* elaborate.cxx (isglob): New function.
(match_key::globmatch): New function.
(match_node::find_and_build): Uses isglob() and
match_key::globmatch() to provide support for wildcards such as
"kernel.syscall.*read*" (Bugzilla #1928).
* elaborate.h (match_key::globmatch): Added function declaration.
* parse.cxx (parser::parse_probe_point): Collects one or more
tokens into a single probe-point functor string.
* testsuite/parseko/twentytwo.stp: New file.
* testsuite/parseok/sixteen.stp: New file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* testsuite/parseko/cmdlinearg01.stp: New file.
* testsuite/parseko/cmdlinearg02.stp: New file.
* testsuite/parseko/eighteen.stp: New file.
* testsuite/parseko/foreachstmt01.stp: New file.
* testsuite/parseko/foreachstmt02.stp: New file.
* testsuite/parseko/foreachstmt03.stp: New file.
* testsuite/parseko/foreachstmt04.stp: New file.
* testsuite/parseko/foreachstmt05.stp: New file.
* testsuite/parseko/forstmt01.stp: New file.
* testsuite/parseko/forstmt02.stp: New file.
* testsuite/parseko/forstmt03.stp: New file.
* testsuite/parseko/forstmt04.stp: New file.
* testsuite/parseko/functiondecl01.stp: New file.
* testsuite/parseko/functiondecl02.stp: New file.
* testsuite/parseko/functiondecl03.stp: New file.
* testsuite/parseko/functiondecl04.stp: New file.
* testsuite/parseko/functiondecl05.stp: New file.
* testsuite/parseko/functiondecl06.stp: New file.
* testsuite/parseko/functiondecl07.stp: New file.
* testsuite/parseko/ifstmt01.stp: New file.
* testsuite/parseko/ifstmt02.stp: New file.
* testsuite/parseko/nineteen.stp: New file.
* testsuite/parseko/preprocess01.stp: New file.
* testsuite/parseko/preprocess02.stp: New file.
* testsuite/parseko/preprocess03.stp: New file.
* testsuite/parseko/preprocess04.stp: New file.
* testsuite/parseko/preprocess05.stp: New file.
* testsuite/parseko/preprocess06.stp: New file.
* testsuite/parseko/preprocess07.stp: New file.
* testsuite/parseko/preprocess08.stp: New file.
* testsuite/parseko/preprocess09.stp: New file.
* testsuite/parseko/probepoint01.stp: New file.
* testsuite/parseko/probepoint02.stp: New file.
* testsuite/parseko/probepoint03.stp: New file.
* testsuite/parseko/seventeen.stp: New file.
* testsuite/parseko/ternarystmt01.stp: New file.
* testsuite/parseko/twenty.stp: New file.
* testsuite/parseko/twentyone.stp: New file.
* testsuite/parseko/whilestmt01.stp: New file.
* testsuite/parseko/whilestmt02.stp: New file.
|
| |
|
|
|
|
|
|
| |
* testsuite/buildok/sched_test.stp: test scheduler tapset
* examples/small_demos/sched_snoop.stp: demo scheduler tapset
* tapset/scheduler.stp: New scheduler tapset
|
|
|
|
| |
scsi.stp, tskschedule.stp
|
|
|
|
|
|
|
| |
* process.stp: Rename signal.send to signal_send and process.complete
to process_complete, to allow process.* to work properly.
* process.stp (_IS_ERR): declare parameter type
* process.stp (process.create): correct new_pid assignment
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* parse.cxx (parser::parser): Added initializer for 'context'
member variable.
(tt2str): Added support for new tok_keyword type.
(operator <<): Ignores keyword content when outputting error
message.
(lexer::scan): Recognizes keywords, such as 'probe', 'global',
'function', etc. and classifies them as type 'tok_keyword'. This
causes keywords to become reserved so they cannot be used for
function names, variable names, etc.
(parser::parse): Changed tok_identifier to tok_keyword when looking
for "probe", "global", or "function". Also sets context member
variable which remembers if we're in probe, global, function, or
embedded context.
(parser::parse_probe, parser::parse_statement)
(parser::parse_global, parser::parse_functiondecl)
(parser::parse_if_statement, parser::parse_delete_statement)
(parser::parse_break_statement, parser::parse_continue_statement)
(parser::parse_for_loop, parser::parse_while_loop)
(parser::parse_foreach_loop, parser::parse_array_in): Looks for
tok_keyword instead of tok_identifier.
(parser::parse_probe_point): Allows keywords as part of a probe
name, since "return" and "function" are keywords.
(parser::parse_return_statement): Looks for tok_keyword instead of
tok_identifier. Make sure we're in function context.
(parser::parse_next_statement): Looks for tok_keyword instead of
tok_identifier. Make sure we're in probe context.
* parse.h: Added parse_context enum. Added 'tok_keyword' to
token_type enum. Added parse_context 'context' member variable to
parser class.
* stap.1.in: Because the string() function has been removed,
the 'string()' function reference has been changed to a 'sprint()'
function reference.
* stapex.5.in: Ditto.
* stapfuncs.5.in: The description of the string() and hexstring()
functions has been removed.
* testsuite/buildok/context_test.stp: Calls to the string()
function were converted to sprint() function calls.
* testsuite/buildok/fifteen.stp: Ditto.
* testsuite/buildok/nineteen.stp: Ditto.
* testsuite/buildok/process_test.stp: Ditto.
* testsuite/buildok/task_test.stp: Ditto.
* testsuite/buildok/timestamp.stp: Ditto.
* testsuite/buildok/twentyone.stp: Ditto.
* testsuite/semok/args.stp: Ditto.
* testsuite/semok/seven.stp: Ditto.
* testsuite/buildok/fourteen.stp: Calls to log()/string() were
converted to a call to printf().
* testsuite/buildok/sixteen.stp: Ditto.
* testsuite/buildok/thirteen.stp: Ditto.
* testsuite/buildok/twentythree.stp: Ditto.
* testsuite/buildok/twentytwo.stp: Ditto.
* testsuite/buildok/seven.stp: Calls to the string()
function were converted to sprint() calls. Calls to the
hexstring() function were converted to sprintf() calls.
* testsuite/semok/eleven.stp: Ditto.
* testsuite/buildok/seventeen.stp: Calls to log()/hexstring() were
converted to a call to printf().
* testsuite/semko/nineteen.stp: Ditto.
* testsuite/parseok/three.stp: Because keywords are reserved, a
variable named 'string' was renamed to 'str'.
* testsuite/parseok/two.stp: Because keywords are reserved, a
variable named 'global' was renamed to 'gbl'.
* testsuite/transko/two.stp: Because the parser now checks for
'next' and 'return' statement context, a 'next' statement was
removed from a function and a 'return' statement was removed from
a probe.
|
|
|
|
| |
* testsuite/buildok/probefunc.stp: test probefunc()
|
|
|
|
|
|
|
|
| |
* examples/small_demos/proc_snoop.stp: monitor all process events.
* testsuite/buildok/task_test.stp: test compilation of all task
functions.
* testsuite/buildok/process_test.stp: test all process events and
associated variables.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2643
* testsuite/buildok/syscalls.stp: Take "-u" away again.
* configure.ac, systemtap.spec.in: Bump version to 0.5.7.
* configure: Regenerated.
2006-05-05 Frank Ch. Eigler <fche@elastic.org>
PR 2643
* syscalls.stp: Put back some dummy syscall.exit*.return probes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2427.
* staptree.cxx (varuse_collecting_visitor::visit_embeddedcode):
Support /* pure */ declaration. Stop using __tvar_ naming hack.
(v_c_u::visit_print_format): Mark sprint and sprintf as
side-effect-free.
(deep_copy_visitor::visit_print_format): Propagate raw_components.
* stap.1.in: Document declaration.
* elaborate.cxx (semantic_pass_opt2): Verbose message tweak.
(dead_stmtexpr_remover): Extend for more aggressive optimization.
* tapsets.cxx (dwarf,mark_var_expanding_copy_visotor): Add
/* pure */ declaration to rvalue expansions.
* tapset/*.stp: Added /* pure */ declarations to many functions.
* testsuite/parseok/unparsers.stp: Propagate guru mode flag.
* testsuite/buildok/twentyfour.stp: New test.
|
|
|
|
|
|
| |
PR 2599.
* elaborate.cxx (visit_assignment): Tolerate null current_expr.
* testsuite/semok/optimize.stp: Add relevant tests.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 953
* elaborate.h (derived_probe): Add field "name". Stop passing
"probe index" to other emit_* calls.
(emit_probe_context_vars): New member function.
* elaborate.cxx (derived_probe ctor): Generate unique name.
* translate.cxx (*): Adapt to index->name.
(emit_probe): Realize that probe locals only occur at nesting=0.
* tapsets.cxx (*derived_probe::emit_*): Adapt to index->name.
(mark_var_expanding_copy_visitor): New class to process $argN.
(mark_derived_probe ctor): Call it.
(mark_derived_probe::emit_probe_context_vars): Do it.
* buildrun.cxx (compile_pass): Add more optional gcc verbosity.
Add CFLAGS += -freorder-blocks.
* testsuite/buildok/marker.stp: New test.
|
|
|
|
|
| |
* testsuite/buildok/syscall.stp: Update so
it works again.
|
|
|
|
|
|
|
| |
PR 2425
* staptree.cxx (varuse_collecting_visitor::visit_embeddedcode):
Realize that $var-setter functions have side-effects.
* testsuite/transok/tval-opt.stp: New test.
|
| |
|
|
|
|
|
|
| |
* tapset/indent.stp, indent-default.stp: New little tapset.
* stapfuncs.5.in: Document it.
* testsuite/buildok/indent.stp: Build it.
|