summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Relax the type-matching in the cmd_parse13 testJosh Stone2009-07-301-1/+1
| | | | | Dwarf probes are now printing their $target variables in -L, so we need to handle more than just stap types in the regular expression.
* dtrace.in: Don't interpret -h -o FILE, just use the filename as is.Stan Cox2009-07-301-8/+9
|
* PR10459. Disable all warning messages on -w.Mark Wielaard2009-07-304-27/+35
| | | | | | | | | | | | | * stap.1.in: Document that -w disables all warning messages. * dwflpp.cxx (get_module_dwarf): Only output warning when session suppress_warnings is not set. * translate.cxx (dump_unwindsyms): Likewise. (emit_symbol_data_done): Likewise. * tapsets.cxx (query_module_symtab): Likewise. (read_from_elf_file): Take systemtap_session, check suppress_warnings before emitting warning. (read_from_text_file): Likewise. (get_symtab): Call read_from_elf_file and read_from_text_file with session.
* Remove unused result_string from ustack.tcl.Mark Wielaard2009-07-301-9/+0
| | | | * testsuite/systemtap.exelib/ustack.tcl: Remove result_string.
* Enable variable listing (-L) for uprobesJosh Stone2009-07-291-0/+69
| | | | | | | | | All $target variables and their C-types are now printed in -L mode. * tapsets.cxx (uprobe_derived_probe::uprobe_derived_probe): Save the local arguments while we still have the dwflpp open. (uprobe_derived_probe::saveargs): New (uprobe_derived_probe::printargs): New
* Enable variable listing (-L) for dwarf probesJosh Stone2009-07-291-0/+69
| | | | | | | | | All $target variables and their C-types are now printed in -L mode. * tapsets.cxx (dwarf_derived_probe::dwarf_derived_probe): Save the local arguments while we still have the dwflpp open. (dwarf_derived_probe::saveargs): New (dwarf_derived_probe::printargs): New
* Use a real session flag for -LJosh Stone2009-07-292-10/+14
| | | | | | | | | Rather than relying on 'unoptimized' to tell us that the listing mode should print the variables too, this adds an explicit listing_mode_vars. * session.h (systemtap_session): Add listing_mode_vars * main.cxx (main): Set s.listing_mode_vars appropriately. (printscript): Use the new flag for deciding whether to print locals
* Break up dwarf_var_expanding_visitor::visit_target_symbolJosh Stone2009-07-291-361/+379
| | | | | | | | | This just refactors large chunks of visit_target_symbol into a couple of smaller functions. * tapsets.cxx (dwarf_var_expanding_visitor::visit_target_symbol_context): New (dwarf_var_expanding_visitor::visit_target_symbol_saved_return): New (dwarf_var_expanding_visitor::visit_target_symbol): Call the new ones
* PR6978: support $$parms for process.syscallWenji Huang2009-07-283-41/+125
| | | | | | * 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.
* PR10453: Fix crash.exp not to refer removed fileMasami Hiramatsu2009-07-281-1/+1
| | | | | * systemtap.base/crash.exp: Use command-line script instead of removed script file.
* Improves functionality on rawhide (2.6.31-rcX) kernels.David Smith2009-07-281-65/+113
| | | | | | | | | | | | | | | * runtime/transport/ring_buffer.c (struct _stp_iterator): Renamed from _stp_ring_buffer_data. (_stp_data_open_trace): Uses _stp_iterator. (_stp_data_release_trace): Ditto. (_stp_ring_buffer_empty_cpu): Ditto. (_stp_ring_buffer_empty): Ditto. (_stp_ring_buffer_consume): Ditto. (_stp_tracing_wait_pipe): Ditto. (_stp_peek_next_event): Ditto. (_stp_find_next_event): Ditto. (_stp_data_read_trace): Ditto. (_stp_data_write_reserve): Ditto.
* Install yum-utils when yumdownloader is missing first in stapprep.sh.Mark Wielaard2009-07-281-0/+4
| | | | | * doc/SystemTap_Beginners_Guide/en-US/extras/stapprep.sh: Check whether yumdownloader is already available and install yum-utils if not.
* Support for presenting multiple graphsTim Moore2009-07-2816-839/+1337
| | | | | | | | | | | | | | | | | | | | * grapher/Graph.hxx: New file; class for single graph display. * grapher/Graph.cxx: New file. * grapher/GraphData.hxx: Associate title and axis labels with graph data and not a graph display. * grapher/GraphWidget.hxx: Move graph-related members to Graph class. * grapher/GraphWidget.cxx (getExtents, setExtents): Move to Graph class (on_expose_event): Move graph rendering to Graph. (on_button_press_event): Delegate to Graph. (on_motion_notify_event, on_scroll_event): Modify "active" graph. * grapher/StapParser.cxx (findTaggedValue): New parsing helper function. (io_callback): Support new syntax where properties are attached to graph data and not the entire graph. * grapher/grapher.cxx (GrapherWindow): Don't set graph values. * grapher/Makefile.am: Add Graph.cxx. * testsuite/systemtap.examples/general/grapher.stp: New property syntax.
* grapher fixupsTim Moore2009-07-281-1/+1
| | | | * grapher/grapher.cxx (main): Fix problems with call to execlp.
* Templatize GraphDataTim Moore2009-07-286-70/+146
| | | | | | | | | | | | | | | | * grapher/GraphData.hxx (GraphDataBase): new superclass for GraphData. Split time data out as a separate vector. (GraphData): Rewrite as template. * grapher/GraphWidget.cxx (on_expose_event): Reflect GraphData templatization. Handle events with string values. * grapher/GraphWidget.hxx (GraphWidget): Keep pointers to GraphDataBase objects instead of GraphData. * grapher/StapParser.cxx (parseData): new member function (ioCallback): Handle new discreet event * grapher/StapParser.hxx (StapParser): keep pointers to GraphDataBase objects instead of GraphData * testsuite/systemtap.examples/general/grapher.stp: Display actual key pressed for keyboard event
* run stap from grapherTim Moore2009-07-281-2/+32
| | | | | * grapher/grapher.cxx (main): Start stap + script from program if supplied as an argument.
* Incorporate grapher widget in real applicationTim Moore2009-07-281-11/+78
| | | | | * grapher/grapher.cxx (GrapherWindow): New class. (main): Instantiate GrapherWindow.
* Add CSV syntax support to the grapherTim Moore2009-07-283-10/+78
| | | | | | * grapher/GraphData.hxx (CSVData): new class * grapher/GraphData.cxx (commaSplit): new function (ioCallback): handle CSV definition and data
* Refactor StapParser into its own filesTim Moore2009-07-285-90/+123
| | | | | | * grapher/StapParser.cxx: new file * grapher/StapParser.hxx: new file * grapher/grapher.cxx: Use external StapParser class.
* Tweaks to grapher axis drawingTim Moore2009-07-281-7/+15
| | | | | * grapher/GraphWidget.cxx (on_expose_event): Don't draw axis labels that would overlap others.
* restore newlines to grapher script headerTim Moore2009-07-281-4/+4
| | | | * testsuite/systemtap.examples/general/grapher.stp: Restore newlines.
* PR6905: tweak WILDCARD and RANGE line type for process.statementWenji Huang2009-07-274-4/+64
| | | | | | | | * 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.
* Mention where we looked and if we didn't find line info on statement probe.Mark Wielaard2009-07-271-0/+3
| | | | | * tapsets.cxx (query_cu): When statement check fails and no line info available, mention the CU had no line info.
* Explicitly link with nss3 nspr4 and plc4 when used.Mark Wielaard2009-07-253-423/+576
| | | | | | | | | | | | GNU gold depends on all libraries providing symbols being explicitly linked in (PR 10238). And it is pedantically more correct indeed. * Makefile.am (stap_LD_ADD): Add -lnspr4 when HAVE_NSS. (staprun_LDADD): Likewise. (stap_client_connect_LDADD): Add -lnss3 -lnspr4 -lplc4 when BUILD_SERVER. (stap_server_connect_LDADD): Likewise. * Makefile.in: Regenerated. * aclocal.m4: Likewise.
* PR6898: support $$vars and $$parms for markerWenji Huang2009-07-232-14/+81
| | | | | * tapset-mark.cxx (visit_target_symbol_context): Add $$vars/$$parms. * testsuite/systemtap.base/marker.exp : Test case.
* Workaround cfa_nops not being needed on earlier elfutils.Mark Wielaard2009-07-232-2/+2
| | | | | * dwflpp.cxx (get_cfa_ops): Only define cfa_nops if _ELFUTILS_PREREQ(0,142). * loc2c-test.c (main): Likewise.
* Adjust to new elfutils dwarf_frame_cfa interface.Mark Wielaard2009-07-232-4/+6
| | | | | * dwflpp.cxx (get_cfa_ops): Call dwarf_frame_cfa with cfa_nops size_t. * loc2c-test.c (main): Likewise.
* Make ring_buffer transport work on new kernels.David Smith2009-07-221-13/+44
| | | | | | | * runtime/transport/ring_buffer.c (_stp_event_to_user): Added debug prints. (_stp_ring_buffer_consume): New function. (_stp_find_next_event): Avoid incrementing the buffer iterator here. (_stp_data_write_commit): Added debug prints.
* PR10427 Multiple tracepoints OK!Mark Wielaard2009-07-221-1/+3
| | | | | * testsuite/systemtap.base/tracepoints.stp: Only print once, when enough hits, or at the begin probe.
* Use the query paradigm for resolving sdt probesJosh Stone2009-07-212-377/+384
| | | | | | | | | | | | | | | | There was a bad assumption in the probe_table initialization that the dwflpp->module would be immediately valid. We should not assume that dwflpp only has one module, or that any module is necessarily in focus. Instead, I've created an sdt_query class which will call an iterate_over_modules like the other dwarf probe types. For now this means just a single module, but it will also open the door to iterating over all linked libraries too, for example. * dwflpp.cxx (dwflpp::setup_user): don't "save mod!" anymore * tapsets.cxx (probe_table -> sdt_query): convert to a query-style class, and also take over the task of iterating over the probes. (dwarf_builder::build): leave the iteration to sdt_query
* Remove unused 'sess' from dwarf_query ctorJosh Stone2009-07-211-6/+4
|
* PR10421: Update task.stp for 2.6.31Wenji Huang2009-07-211-3/+9
| | | | * tapset/task.stp (pid2task): Use find_get_pid for 2.6.31.
* PR10182 systemtap.spec should try to clean up old leftover uprobes module.Mark Wielaard2009-07-211-0/+2
| | | | systemtap.spec (post,preun): Call rmmod uprobes.
* Save module when dwflpp setup_user.Mark Wielaard2009-07-211-0/+1
| | | | * dwflpp.cxx (setup_user): Set module to mod.
* PR10424: Consider each tracepoint header separatelyJosh Stone2009-07-205-52/+83
| | | | | | | | | | | | | | | | With the current monolithic tracepoint query module, a failure in any of the discovered tracepoint headers means that you can't use any of the others either. This patch creates a separate query module for each header so they can pass or fail independently. * buildrun.cxx (make_tracequery): take a single header name instead of globbing for everything we can find. * hash.cxx (find_tracequery_hash): name the header file we're hashing. * tapsets.cxx (tracepoint_query::handle_query_func): make sure we don't duplicate tracepoints found through different headers. (tracepoint_builder::get_tracequery_module): get a header's module (tracepoint_builder::init_dw): glob for all tracepoint headers, and feed all their modules into dwflpp.
* Make sure that non-existent files still affect hashingJosh Stone2009-07-201-6/+6
| | | | | | | The fact that a file _doesn't_ exist is significant, so adding such a file to a computed hash should still influence the output. * hash.cxx (hash::add_file): add bogus stat info for non-existent files
* Allow dwflpp to take a vector of module namesJosh Stone2009-07-202-21/+38
| | | | | | | | | This will be used to load tracepoint modules as a bunch of little query modules into a single dwflpp. * dwflpp.cxx (setup_user): take a vector instead of a single module (dwflpp::dwflpp): form a vector in the singular case, and add a variant that takes and passes through a vector of modules.
* Return hash module values directly as stringsJosh Stone2009-07-204-20/+19
| | | | | | | | * session.h (systemtap_session): remove tracequery_path * hash.cxx (find_tracequery_hash, find_typequery_hash): return strings * tapsets.cxx (dwarf_cast_expanding_visitor::filter_special_modules): get the hashed path from the return value instead of a parameter (tracepoint_builder::init_dw): ditto, and don't stuff it in session
* Fixes for 2.6.31. There are some changes in sk_buff structure those causeDavid J. Wilder2009-07-202-10/+81
| | | | | failures of compiling ipmib.stp and tcpmib.stp, rtable and dst fields are deleted.
* Fixed PR 10386 by removing the need to convert a pid to a task.David Smith2009-07-204-18/+6
| | | | | | | | | * runtime/itrace.c (usr_itrace_init): Changed prototype to take a task_struct instead of a pid. * tapset-itrace.cxx (emit_module_decls): Updated usr_itrace_init() call. * runtime/autoconf-find-task-pid.c: Removed, since only user_itrace_init() was using it. * buildrun.cxx (compile_pass): Removed autoconf-find-task-pid.c test.
* * tapsets.cxx (dwarf_builder::probe_table::convert_probe):Stan Cox2009-07-202-59/+54
| | | | | | First check kprobe and utrace (did we arrive via stap?) then check if probe arg matches mark("NAME") * sdt.h (STAP_PROBE?_): Use STAP_GUARD for stap check, not gettid.
* Tweak kernel or module resident probeWenji Huang2009-07-193-132/+132
| | | | | | * tapset/nfs_proc.stp: Change '?' notation to "!". * tapset/nfsd.stp: Ditto. * tapset/scsi.stp: Ditto.
* minor typoDon Domingo2009-07-201-1/+1
|
* revising for brew buildDon Domingo2009-07-202-2/+32
|
* minor revisions to languageDon Domingo2009-07-201-9/+19
|
* PR6961: gcc warning tweakFrank Ch. Eigler2009-07-171-3/+4
| | | | * sym.c (_stp_usymbol_print): Ditto.
* regenerate example indexesFrank Ch. Eigler2009-07-174-1/+51
|
* PR6961: gcc warning tweakFrank Ch. Eigler2009-07-171-3/+4
| | | | * sym.c (_stp_symbol_print): (Redundantly) initialize locals.
* Update AUTHORS and .mailmapJosh Stone2009-07-172-0/+3
| | | | | * AUTHORS: Add David J. Wilder and Jeff Moyer. * .mailmap: Add a real name for <wjhuang@localhost.localdomain>
* save_stack_trace autoconf: fix typo to activate code in runtime/stack.cFrank Ch. Eigler2009-07-171-1/+1
|