| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* staptree.{cxx,h}
(target_symbol): New struct.
(*_visitor::visit_target_symbol): Support it.
(visitor::active_lvalues)
(visitor::is_active_lvalue)
(visitor::push_active_lvalue)
(visitor::pop_active_lvalue): Support lvalue-detection.
(delete_statement::visit)
(pre_crement::visit)
(post_crement::visit)
(assignment::visit): Push and pop lvalue expressions.
* elaborate.{cxx,h}
(lvalule_aware_traversing_visitor): Remove class.
(no_map_mutation_during_iteration_check)
(mutated_map_collector): Update lvalue logic.
(typeresolution_info::visit_target_symbol): Add, throw error.
* parse.{cxx,h}
(tt2str)
(tok_is)
(parser::expect_*)
(parser::peek_*): New helpers.
(parser::parse_symbol): Rewrite, support target_symbols.
* translate.cxx (c_unparser::visit_target_symbol): Implement.
* tapsets.cxx (var_expanding_copy_visitor): Update lvalue logic,
change visit_symbol to visit_target_symbol.
|
|
|
|
|
|
| |
PR 1174
* stp_check.in: Supply path for lsmod.
* stp_check: Removed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* elaborate.cxx:
(delete_statement_symresolution_info): New struct.
(symresolution_info::visit_delete_statement): Use it.
(delete_statement_typeresolution_info): New struct.
(typeresolution_info::visit_delete_statement): Use it.
(symresolution_info::find_var): Accept -1 as 'unknown' arity.
* elaborate.h: Update to reflect changes in .cxx.
* translate.cxx (mapvar::del): New method.
(c_unparser::getmap): Check arity >= 1;
(delete_statement_operand_visitor): New struct.
(c_unparser::visit_delete_statement): Use it.
* staptree.cxx (vardecl::set_arity): Accept and ignore -1.
(vardecl::compatible_arity): Likewise.
* testsuite/buildok/eight.stp: New test for 'delete' operator.
|
| |
|
| |
|
|
|
|
|
|
|
| |
* loc2c-test.c: New file.
* Makefile.am (stpd_LDADD): Add loc2c-test.
(loc2c_test_SOURCES, loc2c_test_LDADD): New variables.
* Makefile.in, aclocal.m4: Regenerated.
|
| |
|
| |
|
|
|
|
|
|
|
| |
* stap.1.in: Autoconfify old man page.
* configure.ac: Make it so.
* stap.1: Removed.
* configure, Makefile.in, aclocal.m4: Regenerated.
|
|
|
|
|
| |
* runtest.sh: Keep around log files from crashed processes,
those whose rc is neither 0 nor 1.
|
|
|
|
|
|
| |
* tapsets.cxx (query_statement|function|cu|module): Add explicit
nested try/catch, since elfutils iteration seems to block
exception catching.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR translator/1175
* translate.cxx (*): Added unlikely() markers to most emitted error
checks.
(mapvar::get,set): Handle NULL<->"" impedance mismatch.
(itervar::get_key): Ditto. Use base index=1 for keys.
* testsuite/buildok/one.stp: Extend. And it runs with -p5 too.
* stap.1: Document use of ";" statament as mechanism for grammar
ambiguity resolution.
* stp_check.in: Set $prefix.
* systemtap.spec.in: Prereq kernel-devel, kernel-debuginfo,
and not tcl.
* tapsets.cxx: Make slightly less verbose.
* translate.cxx
|
| |
|
|
|
|
|
| |
* io.c (_stp_vlog): Revert previous change for now.
* print.c (_stp_print_flush): Ditto.
|
|
|
|
| |
* transport.c: Comment out a couple printks.
|
| |
|
|
|
|
|
| |
* tapsets.cxx (dwflpp): Fix address calculation logic a bit,
and use prologue-end addresses for function probes.
|
|
|
|
|
|
|
|
| |
* stap.1: More meat, all stub sections filled.
* elaborate.cxx (visit_assignment): Add numerous missing cases.
* parse.cxx: Parse ".=" operator.
* testsuite/semok/sixteen.stp: Check them.
* main.cxx (usage): Don't show incompletely supported options.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* stp_check.in : Copy sources to /var/cache/systemtap.
* systemtap.spec.in: Install stp_check. Create /var/cache/systemtap
* Makefile.am (install-exec-local): Install stp_check.
* configure.ac, systemtap.spec.in: Version 0.2.2.
* Makefile.in, aclocal.m4, configure: Regenerated.
|
|
|
|
| |
* librelay.c (init_stp): Change variable name to eliminate shadow warning.
|
|
|
|
|
| |
* configure.ac: Add stp_check to AC_CONFIG_FILES.
* stp_check.in : New file.
|
|
|
|
|
|
|
|
|
| |
* librelay.c (open_control_channel): Set the receive buffer
to 512K, or the max allowed.
* stpd.c: Remove "-n" subbug option and change "-b" option
so you can specify buffering in different ways. Add a verbose option.
Exec the "stp_check" script.
|
|
|
|
|
|
| |
* README: Be more specific about prerequisites.
* tapset/builtin_string.stp: New builtin.
* testsuite/buildok/seven.stp, semko/eighteen.stp: New tests.
|
| |
|
|
|
|
|
| |
* configure.ac, systemtap.spec.in: Version 0.2.1.
* Makefile.in, aclocal.m4, configure: Regenerated.
|
| |
|
|
|
|
|
|
| |
* loc2c.c (emit_bitfield): Return bool, value from emit_base_fetch.
(c_translate_fetch): Update caller.
(c_translate_pointer): Never ignore emit_base_fetch return value.
|
| |
|
|
|
|
| |
* systemtap.spec.in (%install): Remove parameters after %makeinstall.
|
| |
|
|
|
|
|
|
|
|
|
| |
* loc2.c (emit_loc_address): Emit interleaved declaration into
its own nested { } block.
* tapsets.cxx (literal_stmt_for_local): Emit deref_fault block
unconditionally.
* tapset/builtin_hexstring.stp: New builtin.
* testsuite/buildok/six.stp: New test.
|
|
|
|
|
| |
* tapsets.cxx (emit_registrations): Treat module_name="kernel"
as if module_name="".
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* staptree.{cxx,h} (probe_point::component): Add a ctor.
* tapsets.cxx (dwarf_derived_probe): Synthesize concrete
probe_point for matched pattern.
(dwarf_probe_type)
(dwarf_query::add_kernel_probe)
(dwarf_query::add_module_probe): Remove, they were noise.
(dwflpp::module_name_matches): Don't call get_module_dwarf().
|
| |
|
|
|
|
|
| |
* librelay.c: Correct fwrite api usage.
* all: Correct copyright holder name.
|
| |
|
|
|
|
|
| |
* tapsets.cxx: Support ".return" option for function probe points.
* testuite/buildok/five.stp: Try it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* agg/stat1.c (probe_exit): Remove "static"
* agg/count1.c (probe_exit): Ditto.
* agg/count2.c (probe_exit): Ditto.
* bench/bench_io2.c (probe_exit): Ditto.
* bench/bench_io1.c (probe_exit): Ditto.
* bench/bench.c (probe_exit): Ditto.
* bench/bench_ret.c (probe_exit): Ditto.
* bench/bench_multi.c (probe_exit): Ditto.
* where_func/kprobe_where_funct.c (probe_exit): Ditto.
* test4/test4.c (probe_exit): Ditto.
* tasklet/stp_tasklet.c (probe_exit): Ditto.
* os_timer/os_timer.c (probe_exit): Ditto.
* scf/scf.c (probe_exit): Ditto.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* librelay.h: Get structs and enums from
../transport/transport_msgs.h to eliminate duplication.
* librelay.c (send_request): Retry if send fails.
(open_relayfs_files): Use fopen() instead of open() for the
percpu tmpfiles.
(request_last_buffers): Just send cpu number for STP_BUF_INFO request.
(reader_thread): Ditto.
(process_subbufs): Use fwrite_unlocked() instead of write().
(sigchld): Removed.
(init_stp): Go back to using system() instead of fork and exec
to load module. When done, send a TRANSPORT_INFO request.
(cleanup_and_exit): Change parameter to simple flag to
indicate if the module needs removing.
(sigproc): Remove complicated logic and just send STP_EXIT.
(stp_main_loop): When receiving STP_TRANSPORT_INFO, set
the local params and reply with a STP_START. When
receiving STP_START, there was an error, so cleanup and exit.
* stpd.c (main): Added new options to set number of
buffers and their size.
|
|
|
|
|
|
|
| |
* io.c (_stp_vlog): Use _stp_pid instead os _stp_tport->pid.
* print.c (_stp_print_flush): Don't need _stp_tport.
*runtime.h (probe_start): Just call _stp_transport_init().
(probe_exit): Just call _stp_transport_close().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* control.h: Remove STP commands from here and put in
transport_msgs.
* transport_msgs.h: New file containing the structs and
values for the messages exchanged between stpd and transport.
* transport.h: Moved stuff shared with stpd to transport_msgs.h
* transport.c: Complete rewrite to better handle complicated
initialization involving exchanging data with stpd. Supports
buffer size negotiation and more.
|
|
|
|
|
|
|
|
|
| |
* elaborate.cxx (derive_probes, semantic_pass_symbols): Improve
error message specificity.
* translate.cxx (emit_module_init): Compact partial registration
recovery code.
(emit_module_exit): Invert deregistration sequence.
* testsuite/buildok/four.stp: Some module() test case.
|
|
|
|
|
|
|
|
|
|
|
| |
* elaborate.cxx (derive_probes): Print error if results empty.
* tapsets.cxx (dwflpp_assert): Handle positive RCs, which likely
came from errno.
(dwflpp::setup): Improve missing debug-info messages.
* testsuite/semko/sixteen,seventeen.stp: New tests.
* runtest.sh: Save stdout/stderr of FAIL/XPASS test cases.
* Makefile.am (clean-local): Clean up testsuite/.
* Makefile.in, aclocal.m4: Regenerated.
|
| |
|
| |
|
|
|
|
|
| |
From Graydon Hoare <graydon@redhat.com:
* tapsets.cxx (var_expanding_copy_visitor): Correct lvalue cases.
|