| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* itrace.h (__access_process_vm): Moved from here...
* runtime/access_process_vm.h: New. ...to here.
* translate.cxx (translate_pass): Include access_process_vm.h
* session.h (sdt_semaphore_addr): New.
* tapsets.cxx (sdt_query::record_semaphore): New. Record sdt_semaphore_addr.
(uprobe_derived_probe_group::emit_module_decls): Allow for uprobe guard variable to be set and unset.
(uprobe_derived_probe_group::emit_module_decls): Likewise.
(uprobe_derived_probe_group::emit_module_exit): Likewise.
* tapset-utrace.cxx (utrace_derived_probe_group::emit_probe_decl): Likewise.
(utrace_derived_probe_group::emit_module_decls): Likewise.
(utrace_derived_probe_group::emit_module_exit): Likewise.
|
|
|
|
|
|
|
|
| |
* testsuite/systemtap.base/flightrec1.exp: Add signal file switching testcase.
* testsuite/systemtap.base/flightrec4.exp: New test for signal file switching
with file number limits.
* testsuite/systemtap.base/flightrec5.exp: New test for signal file switching
with file number limits on bulk mode.
|
|
|
|
|
| |
* testsuite/systemtap.base/labels.exp (-l .label): List all output lines
individually in expect regex.
|
|
|
|
|
|
|
| |
* testsuite/systemtap.syscall/syscall.exp: Simplify logic things.
* testsuite/systemtap.syscall/test.tcl: Check compilation result.
* testsuite/systemtap.base/utrace_syscall_args.exp: Change fail to
untested.
|
|
|
|
|
|
|
|
|
|
|
| |
When there are lots of tracepoints in the kernel running a script
for each one individually can take several minutes. So run them all
in one giant script at the same time. Also increase timeout for
the stap -l collection step since with an empty cache that might
take more than the default 10 seconds.
* testsuite/systemtap.base/tracepoints.exp: Increase default timeout.
Collect all script fragments and run them as one.
|
|
|
|
| |
* sdt_misc: Add -shared section.
|
|
|
|
| |
* testsuite/systemtap.base/cache.exp: Remove MERGE1 and MERGE2 (-M) tests.
|
| |
|
|
|
|
| |
* testsuite/systemtap.base/mysql.exp: New.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of generating a warning the current kernel.statement probe
produced a warning on some 386 kernels that had optimized that
particular line:
semantic error: multiple addresses for fs/bio.c:282
(try fs/bio.c:278 or fs/bio.c:284)
semantic error: no match while resolving probe point
kernel.statement("bio_init@fs/bio.c+3")
So do as told to just get the expected warnings for this probe.
* testsuite/systemtap.base/warnings.stp (probea): Probe bio_init@fs/bio.c+5.
|
| |
|
|
|
|
|
| |
* dtrace.in: Generate the output file from basename of input filename.
* dtrace.exp: Adjust the tests accordingly.
|
|
|
|
|
|
| |
* testsuite/systemtap.base/alias_tapset.exp: New file.
* testsuite/systemtap.base/alias_tapset.stp: Ditto.
* testsuite/systemtap.base/alias_tapset/tapset_test.stp: Ditto.
|
|
|
|
|
|
|
|
|
|
|
| |
When a probe alias is resolved in a tapset, the contents of that tapset
should be included in the compiled script, just as we do for global
variables and functions.
* elaborate.cxx (alias_expansion_builder::build): When an alias is
instantiated, add its stapfile to the session files.
* testsuite/systemtap.base/tapset_includes.exp: New test.
* testsuite/systemtap.base/tapset/*.stp: Testing tapsets for above.
|
| |
|
| |
|
|
|
|
|
| |
* postgres.exp: Grab postgres from upstream then build and test it
with uprobe, utrace, and kprobe.
|
|
|
|
|
|
|
|
| |
* main.cxx (main): Perform equivalent sed by hand on uname()->machine.
* stap.1.in: Clarify -a ARCH slightly.
* tapsets.cxx (validate_module_elf): Accept "arm*"for EM_ARM.
* tapset/**, testsuite/**: Removed/collapsed "i386"/"i686" branches,
renamed "ppc64"->"powerpc" and "s390x"->"s390".
|
|
|
|
|
| |
* testsuite/systemtap.base/cmd_parse.exp: kfail cmd_parse15 when
kernel26ver < 29.
|
|
|
|
|
|
|
| |
A debug "nop" was accidentially left in the asm statement that should
have been totally empty.
* testsuite/systemtap.base/inlinedvars.c (m): Really empty asm.
|
| |
|
|
|
|
|
|
| |
* testsuite/systemtap.base/cache.exp: Rename proc stap_compile to
cache_compile, to prevent conflict with proc stap_compile from
lib/stap_compile.exp.
|
|
|
|
|
|
|
|
| |
* tapsets.cxx (dwarf_var_expanding_visitor::visit_target_symbol_context):
Don't add extra space at end of list, only add space between symbols.
* testsuite/systemtap.base/uprobes.exp: Use more specific expect regex.
* testsuite/systemtap.base/vars.exp: Don't just chop off last char of printf
output string.
|
|
|
|
|
|
|
|
|
|
|
| |
* main.cxx (main): Add 'a:' and 'B:' options.
* session.h (kbuildflags): New place to store -B args.
* testsuite/systemtap.base/cmd_parse.exp: Test them lightly.
* buildrun.cxx (run_make_cmd): Use "--no-print-directory"
rather than ">/dev/null" in kbuild invocations. Pass
'-a' and '-B' flags along.
* hash.cxx (find_script_hash): Add them.
* NEWS, stap.1.in: Mention this.
|
|
|
|
|
|
| |
* testsuite/systemtap.base/sdt_types.c: Initialize char arr_char [], not
with (too small) constant length, to make sure the string is always
null terminated.
|
|
|
|
|
| |
* testsuite/systemtap.base/global_stat.exp: Improved error handling.
* testsuite/systemtap.base/strftime.exp: Ditto.
|
|
|
|
| |
is now using.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is less useful than one would hope. gcc will often emit a label with
a DW_AT_low_pc that is not really in the neighbourhood of where one would
expect it when the label is inlined and gcc can proof the label isn't really
used in the optimized code. dwflpp::iterate_over_labels will now really
iterate recursively through the die, even for dies without a name (like
lexical blocks). This means we should now always find the concrete inlined
label instances that have a real DW_AT_low_pc and so we don't need the trick
to use the line table to get at the actual address.
* dwflpp.cxx (iterate_over_labels): Accept dies without a name. Don't handle
labels without a name or without a lowpc attribute.
* testsuite/systemtap.base/inlinedvars.c (m): Trick gcc into thinking label
is always used.
(call, call2): Activate.
(main): Call call and call2.
* testsuite/systemtap.base/inlinedvars.exp: New result_string.
Test both unoptimized and optimized (inlined) builds.
|
|
|
|
|
| |
* testsuite/systemtap.base/poll_map.exp: Improved error handling.
* testsuite/systemtap.base/postgres.exp: Fixed typo.
|
|
|
|
|
| |
marker support as used by postgres. Currently assumes, and
verifies, that postgres is installed in /usr/local
|
|
|
|
|
| |
* testsuite/systemtap.base/arith.exp: Improved error handling.
* testsuite/systemtap.base/cmd_parse.exp: Ditto.
|
|
|
|
| |
* testsuite/systemtap.base/sdt_types.stp (int_var): Add \n to printf.
|
|
|
|
|
|
| |
* testsuite/systemtap.base/cxxclass.exp: New file.
* testsuite/systemtap.base/cxxclass.stp: Likewise.
* testsuite/systemtap.base/cxxclass.cxx: Likewise.
|
|
|
|
|
|
|
|
|
|
| |
Partial testcase for PR10533 (inlined vars) and 10537 (inlined labels)
currently we cannot use the full testcase since stap doesn't support
probing multiple instances of inlined labels.
* testsuite/systemtap.base/inlinedvars.exp: New file.
* testsuite/systemtap.base/inlinedvars.stp: Likewise.
* testsuite/systemtap.base/inlinedvars.c: Likewise.
|
|
|
|
|
|
|
| |
* tapsets.cxx (tracepoint_derived_probe_group::emit_module_decls): Use
probe_locals to set the tracepoint arguments for the probe.
* testsuite/systemtap.base/tracepoints.exp: Include the arguments in the
pass-4 tracepoint test.
|
|
|
|
| |
* testsuite/systemtap.base/dtrace.exp: New test.
|
|
|
|
|
| |
* dwflpp.cxx (iterate_over_functions): Return for NULL pointer.
* testsuite/systemtap.base/statement.exp: Add test case.
|
|
|
|
|
|
|
| |
* tapsets.cxx (sdt_query::handle_query_module): For uprobe probes:
1) find all same named probes to handle multiple probes per module
2) use new_base for uprobe probes to handle $$name
* sdt_misc.exp: Test $$name
|
|
|
|
|
|
|
|
|
| |
* dwflpp.cxx (iterate_over_srcfile_lines): Add pattern parameter.
* dwflpp.h (iterate_over_srcfile_lines): Ditto.
* testsuite/systemtap.base/bz10294.c: Test case.
* testsuite/systemtap.base/bz10294.stp: Ditto.
* testsuite/systemtap.base/bz6905.exp: Deleted.
* testsuite/systemtap.base/statement.exp: Merge bz10294 with bz6905.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Using spawn with sudo doesn't work well, because the password prompt
won't go to the correct TTY. The only reason that the uprobes tests
needed to do this is so uprobes.ko could be built as root. Now instead,
I've added a pre-check that will directly call the uprobes make with
sudo (via the as_root proc).
* testsuite/lib/systemtap.exp (uprobes_p): Check and build uprobes.ko.
* testsuite/systemtap.base/uprobes.exp: Use uprobes_p; don't spawn sudo.
* testsuite/systemtap.base/bz6850.exp: Ditto.
* testsuite/systemtap.base/bz10078.exp: Ditto.
* testsuite/systemtap.base/bz6905.exp: sudo isn't needed for -p2.
|
|\
| |
| |
| |
| |
| | |
Conflicts:
cache.cxx
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Rather than just numeric literals, we can now support arbitrary
expressions for the index value. Note that loc2c won't allow this for
noncontiguous arrays, as the access methods need to be statically
computed, but for contiguous arrays and pointers-as-arrays it works
just fine.
* staptree.h (target_symbol::component): Add expression_array_index.
* staptree.cxx (target_symbol::visit_components): New helper.
(target_symbol::assert_no_components): Recognize new array type.
(target_symbol::component::print): Print subexpressions.
(traversing_visitor::visit_target_symbol, visit_cast_op): Visit the
indexing components too.
(varuse_collecting_visitor::visit_target_symbol): Ditto.
(update_visitor::visit_target_symbol, visit_cast_op): Ditto.
* elaborate.cxx (void_statement_reducer::visit_target_symbol): New.
(void_statement_reducer::visit_cast_op): Save indexes too.
* parse.cxx (parser::parse_target_symbol_components): Parse expressions.
* tapsets.cxx (dwarf_var_expanding_visitor::visit_target_symbol): Pass
expression-indexes as parameters (indexN) to the dwarf function.
(dwarf_cast_expanding_visitor::visit_cast_op): Ditto.
(tracepoint_var_expanding_visitor::visit_target_symbol_arg): Ditto.
(sdt_var_expanding_visitor::visit_target_symbol): Visit the new @cast.
* dwflpp.cxx (dwflpp::translate_components): Use THIS->indexN.
* translate.cxx (c_unparser::visit_target_symbol): Correct error msg.
* testsuite/systemtap.base/pointer_array.stp: Use a simple index.
|
| |
| |
| |
| |
| | |
Dwarf probes are now printing their $target variables in -L, so we need
to handle more than just stap types in the regular expression.
|
| |
| |
| |
| |
| |
| | |
* tapset-utrace.cxx (visit_target_symbol_arg): Handle $$parms.
* testsuite/systemtap.base/utrace_p4.exp: Add test case.
* testsuite/systemtap.base/utrace_p5.exp: Ditto.
|
| |
| |
| |
| |
| | |
* systemtap.base/crash.exp: Use command-line script instead of removed
script file.
|
| |
| |
| |
| |
| |
| |
| |
| | |
* dwflpp.cxx (iterate_over_srcfile_lines): Check the line range
and tolerate invalid line number for WILDCARD line type.
* testsuite/systemtap.base/bz6905.c: Test case.
* testsuite/systemtap.base/bz6905.exp: Ditto.
* testsuite/systemtap.base/bz6905.stp: Ditto.
|
|\| |
|
| |
| |
| |
| |
| | |
* tapset-mark.cxx (visit_target_symbol_context): Add $$vars/$$parms.
* testsuite/systemtap.base/marker.exp : Test case.
|