summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | AUTHORS bump for KiranJosh Stone2009-10-021-0/+1
| |
* | Updates samples index for sched_switchJosh Stone2009-10-026-3/+49
| |
* | Scheduler Tapset based on kernel tracepointsKiran Prakesh2009-10-024-51/+429
| | | | | | | | | | | | | | | | | | This patch adds kernel tracepoints based probes to the scheduler tapset along with the testcase, scheduler-test-tracepoints.stp and an example script, sched_switch.stp. Signed-off-by: Kiran Prakash <kiran@linux.vnet.ibm.com> Signed-off-by: Josh Stone <jistone@redhat.com>
* | indent tapset: make O(1) rather than O(n)Frank Ch. Eigler2009-10-021-5/+1
| | | | | | | | | | * tapset/indent.stp (_generic_indent): Use "%-*s" instead of string concatenation loop.
* | Fix stap-server bug. --unprivileged not processed if processed as first ↵Dave Brolley2009-10-021-1/+1
| | | | | | | | argument.
* | loc2c discontiguify loops for not small enough loc_constant.Mark Wielaard2009-10-021-0/+2
| | | | | | | | | | * loc2c.c (loc_constant): Add offset to size after creating piece in loc_constant loop.
* | PR10678 vta-gcc: module debuginfo: relocation refers to undefined symbolMark Wielaard2009-10-022-1/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libdwfl tries to resolve all relocations in a module debuginfo file and if it cannot find a symbol used in a relocation it will fail when dwfl_module_getdwarf() is called. So we must make sure all possible dependencies of the module are also in the dwfl. We do this by trying to find and parse the modules.dep file and insert all dependencies into the dwfl. * setupdwfl.cxx (elfutils_kernel_path): Lift from setup_dwfl_kernel and make static. (is_comma_dash): New function. (modname_from_path): Likewise. (setup_mod_deps): Likewise. (setup_dwfl_report_kernel_p): Call setup_mod_deps(). * testsuite/buildok/pr10678.stp: New test.
* | Fixed grapher build.David Smith2009-10-011-0/+2
|/ | | | * systemtap.spec: Updated grapher's buildreqs and file list.
* Grapher support now also needs libglademm24-devel, version 2.6.7 or higher.Mark Wielaard2009-10-012-3/+3
| | | | | * configure.ac: Clarify fail/help string when gtkmm support wasn't found. * configure: Regenerated.
* Add DEBUG_UPROBES for sdt semaphores.Stan Cox2009-10-012-3/+22
| | | | | | * tapsets.cxx (uprobe_derived_probe_group::emit_module_decls): Add DEBUG_UPROBES for sdt semaphores * dtrace.in (main): Add -k option to keep around the temp files.
* Print total memory usage in verbose mode after pass 1, 2 and 3.Mark Wielaard2009-10-011-6/+35
| | | | | | | Makes it easier to see which probe queries use lots of memory. * main.cxx (getmemusage): New function. (main): Use new function printing passes in verbose mode.
* Actually indent_thread() is a very useful function, butBreno Leitao2009-10-011-4/+16
| | | | | | | | | | | | | | | | | | | | | | sometimes you're probing something that is not related to any task, as an interrupt function, and if the application changes during the interrupt, the indentation gets confused. For example: 0 swapper(0): -> neo_copy_data_from_queue_to_uart 69 a.out(7659): -> neo_parse_modem 74 a.out(7659): -> neo_param 14 swapper(0): <- neo_copy_data_from_queue_to_uart 83 a.out(7659): -> jsm_carrier 86 a.out(7659): <- jsm_carrier 0 swapper(0): -> neo_parse_modem 94 a.out(7659): <- jsm_tty_set_termios 8 swapper(0): <- neo_parse_modem So, I decided to create a simpler function that doesn't consider the task. Much of the idea of this implementation came from Frank(Thanks)
* doc build: support older xmlto without --stringparm optionFrank Ch. Eigler2009-09-304-18/+73
| | | | | * configure.ac: Check for xmlto --stringparam support. * doc/Systemtap_Tapset_Reference/Makefile.am: Be sensitive to the result.
* dialog for choosing stap script and providing arguments to stap and the scriptTim Moore2009-09-305-7/+348
| | | | | | | | | * grapher/grapher.cxx (GraphicalStapLauncher): New class. (GrapherWindow constructor): Bind actions for graphical launcher buttons (GrapherWindow::setGraphicalLauncher): new method (GrapherWindow::on_menu_script_start): new method grapher/stap-start.glade, grapher/stap-start.gladep: new files grapher/Makefile.am: install stap-start.glade
* classes for launching stap and listening for its deathTim Moore2009-09-301-94/+221
| | | | | | | | | * grapher/grapher.cxx (ChildDeathReader): New class to handle I/O signalling death of a child. (GrapherWindow): Inherit from ChildDeathReader. (StapLauncher): New class for passing arguments to inferior stap process and checking for its demise. (main): Move launching logic to StapLauncher.
* Pass command line arguments on to stapTim Moore2009-09-301-3/+6
| | | | * grapher/grapher.cxx (main): Pass program arguments to stap
* cleanup of graph data dialogTim Moore2009-09-301-3/+16
| | | | | * grapher/GraphWidget.cxx (on_button_release_event, onDataAdd): tweaks for graph data dialog
* grapher: Handle the death of the child stap processTim Moore2009-09-303-11/+116
| | | | | | * grapher/grapher.c (main): Set up signal and i/o handlers to detect death of child. * grapher/StapParser.cxx (errIoCallback): New method
* Create lists of graph data to chooseTim Moore2009-09-302-0/+17
|
* Add graph data chooser window, based on gladeTim Moore2009-09-308-49/+351
| | | | | | | | | | | | | * configure.ac: Test for libglademm * grapher/GraphWidget.hxx (DataModelColumns): new class (onDataDialogCancel, void onDataAdd, onDataRemove, onDataDialogOpen): new methods * grapher/GraphWidget.cxx: ditto; methods for the graph data dialog. * grapher/graph-dialog.glade: New file. * grapher/graph-dialog.gladep: New file. * grapher/Makefile.am (dist_pkgdata_DATA): add graph-dialog.glade to installation. * grapher/GraphWidget.cxx (GraphWidget constructor): Use PKGDATADIR
* more multiple graph fixesTim Moore2009-09-302-3/+9
| | | | | | * grapher/Graph.cxx (Graph constructor): set _drawX, _drawY * grapher/GraphWidget.cxx (addGraph): Fix graph layout (on_button_press_event): Fix test of play button in multiple graphs
* Draw multiple graphsTim Moore2009-09-304-8/+39
| | | | | | | | | | | | | | * grapher/Graph.cxx (Graph constructor): Initialize graph dimensions. (draw): Don't clear the drawing area. * grapher/GraphWidget.hxx (GraphWidget): Add dimensions and on_size_request() method. * grapher/GraphWidget.cxx (GraphWidget constructor): Initialize dimensions. (addGraph): New method. (on_size_request): New method to pass widget's size to parent widgets * grapher/grapher.cxx (GrapherWindow constructor): add "add graph" action. (addGraph): New method.
* PR10678 module reloc refers to symbol in dwarf refer to kernel symbols.Mark Wielaard2009-09-301-12/+35
| | | | | | | | | | | | | | First part of a fix for PR10678. Always include the kernel in the dwfl. This doesn't seem to impact performance noticable, so for now enable always. * setupdwfl.cxx (setup_dwfl_done): New variable, used to clean up logic in setup_dwfl_report_kernel_p(). (setup_all_deps): New static bool to indicate we want all deps (just the kernel for now, other modules coming). (setup_dwfl_report_kernel_p): Use new variables, shortcut kernel inclusion. (setup_dwfl_kernel): Setup setup_dwfl_done (false).
* build fix: use boost shared_ptr if libstdc++ to old to have <tr1/memory>Frank Ch. Eigler2009-09-295-1/+324
| | | | | | * configure.ac: Look for tr1/memory and boost/shared_ptr.hpp * setupdwfl.h (shared_ptr): Define conditionally based on above. * systemtap.spec (with_boost): New parameter, default-off.
* Delete trailing whitespaceRobb Romans2009-09-291-42/+42
|
* Add information about userspace probingRobb Romans2009-09-291-0/+239
| | | | | Add information from the manual pages and from Prerna Saxena about userspace probing to the Language Reference Guide.
* Add -Werror to tracequery buildJosh Stone2009-09-291-1/+1
| | | | | | | | The final module build uses -Werror, so tracequery should as well to catch problems as early as possible. Some ext4 errors have crept in again (PR10703). * buildrun.cxx (make_tracequery): Add -Werror to EXTRA_CFLAGS.
* tapset docs cleanupFrank Ch. Eigler2009-09-2913-88/+90
| | | | | | | | | | | | | | Several problems: some invalid <command> etc. directives in the tapset embedded docs; some analysis about the non-generation of the pdf; some cleanup of the generated man pages. * configure.ac (BUILD_PDFREFDOCS): Correct condition typo, but still leave disabled. * doc/SystemTap_Tapset_Reference/Makefile.am (XMLTOMANPARMS): Add, to disable noise "AUTHORS" / "COPYRIGHT" sections. * tapset/*.stp: Removed several docbook-y markup that is not valid in kerneldoc.
* Added timeouts to test 15 & 16.David Smith2009-09-291-0/+2
|
* Cache Dwfl's for reuse between pass 2 and pass 3.Mark Wielaard2009-09-295-52/+114
| | | | | | | | | | * setupdwfl.h: Introduce DwflPtr. * setupdwfl.cxx: Cache kernel_dwfl and user_dwfl. Keep track of last used module strings. Return cached versions if same query used. * dwflpp.h: Use DwflPtr instead of Dwfl*. * dwflpp.cxx: Use DwflPtr and don't dwfl_end(). * translate.cxx: Likewise. Run through dwfl_getmodules() with returned ptr offset.
* Handle non-regex full path kernel module dwfl setup earlier.Mark Wielaard2009-09-291-10/+14
| | | | | | * setupdwfl.cxx (setup_dwfl_kernel(unsigned*,systemtap_session&)): Don't switch around offline_search_modname and offline_search_names here. (setup_dwfl_kernel(string&,unsigned*,systemtap_session&): But here.
* Make sys32_pipe probe available only before 2.6.32Wenji Huang2009-09-292-0/+4
| | | | | * tapset/x86_64/nd_syscalls.stp: Switch by kernel version. * tapset/x86_64/syscalls.stp: Ditto.
* * tapsets.cxx (sdt_query::record_semaphore): Adjust addr relative toStan Cox2009-09-281-2/+6
| | | | relocation base.
* Remove cached signature files along with modulesJosh Stone2009-09-281-4/+9
| | | | | * cache.cxx (cache_ent_info::cache_ent_info): Count the sgn in the size (cache_ent_info::unlink): Remove the sgn too.
* Simplify copy_file callsJosh Stone2009-09-285-66/+36
| | | | | | | | | | | | | | Every single copy_file call we had was converting strings to char*, printing the same error message, and optionally printing the same verbose string. Let's canonicalize that. * util.cxx (copy_file): Take string filenames, add a verbose flag, and consolidate the message printing. * cache.cxx (add_to_cache): Pass strings and remove message printing. (get_from_cache): Ditto. * main.cxx (main): Ditto. * tapsets.cxx (tracepoint_builder::get_tracequery_module): Ditto. (dwarf_cast_expanding_visitor::filter_special_modules): Ditto.
* Try to build tracequery for all headers at onceJosh Stone2009-09-285-30/+55
| | | | | | | | | | | | | | | | | | | | | | To mitigate PR10424, we switched to building a separate tracequery module for each tracepoint header, so a bad header wouldn't break all of the others. However, with recent kernels that leads to ~18 make commands, which adds up quickly in time. It's cached, so that's not too bad, but as a developer who rebuilds stap frequently, it gets annoying. If we're going to call 18 makes, it's worth it to start with one bigger make that covers all the headers at once (like we used to). If that one fails, we can still fall back to compiling individually. FWIW, the failing ext4.h header was only created in 2.6.31, and was fixed before 2.6.32, so the specific failure in PR10424 has a fairly small window. * buildrun.cxx (make_tracequery): Just take a single vector of headers. * hash.cxx (find_tracequery_hash): Deal with multiple headers. * tapsets.cxx (tracepoint_builder::get_tracequery_module): Ditto. (tracepoint_builder::init_dw): Attempt all system headers together, and if that fails, try again individually.
* Factor out duplicated code to setup user/module Dwfl from dwflpp/translate.Mark Wielaard2009-09-295-74/+92
| | | | | | | | | * setupdwfl.h: Add setup_dwfl_user() and is_user_module(). * setupdwfl.cxx: Likewise. * dwflpp.cxx (setup_user): Use setup_dwfl_user(). * translate.cxx (emit_symbol_data): Likewise and is_user_module(). * tapsets.cxx (dwarf_cast_expanding_visitor::visit_cast_op): Use is_user_module().
* Handle full path .ko modules in setup_dwfl_kernel.Mark Wielaard2009-09-281-0/+26
| | | | * setupdwfl.cxx (setup_dwfl_kernel): First report all full path modules.
* Better cleanup.David Smith2009-09-281-1/+2
| | | | * testsuite/systemtap.base/cmd_parse.exp: Remove temporary module.
* cleanup: tweak "read-only <variable>" messageFrank Ch. Eigler2009-09-281-4/+4
| | | | | | * elaborate.cxx (semantic_pass_opt2): Use "never-assigned" instead of "read-only". (dead_stmtexpr_remover::visit_expr_statement): Ditto.
* Use dwlpp::setup_kernel for tracepoint modules.Mark Wielaard2009-09-283-6/+36
| | | | | | | | | | | Tracepoint modules ended up going through dwflpp::setup_user() because there was no setup_kernel that takes a list of module names. * dwflpp.h: Add kernel_p bool to constructor that takes a module list. Add setup_kernel() variant that takes a module list. * dwflpp.cxx: Likewise. * tapsets.cxx (tracepoint_builder::init_dw): Call dwflpp constructor indicating we expect kernel modules.
* Factor out duplicated code to setup kernel/module Dwfl from dwflpp/translate.Mark Wielaard2009-09-286-162/+232
| | | | | | | | | | | * setupdwfl.h: New header file. * setupdwfl.cxx: New source file containing shared setup_dwfl_kernel() code. * dwflpp.cxx (dwfl_report_offline_predicate): Removed. (setup_kernel): Call setup_dwfl_kernel(). * translate.cxx (dwfl_report_offline_predicate2): Remove. (emit_symbol_data): Call setup_dwfl_kernel(). * Makefile.am (stap_SOURCES): Add setupdwfl.cxx. * Makefile.in: Regenerated.
* PR10700 Add newline after log() message.Mark Wielaard2009-09-281-1/+1
| | | | * tapset/logging.stp (log): Use _stp_printf "%s\n".
* Removing support for InMcastPkts, OutMcastPkts, InBcastPkts andDavid J. Wilder2009-09-251-82/+4
| | | | | OutBcastPkts. As they are not needed for tcpipstat and tend to break easily with kernel changes.
* No longer need buffer iterators.David Smith2009-09-251-2/+0
| | | | * runtime/tranport/ring_buffer.c: Removed 'USE_ITERS' definition.
* Purge warnings from buildok testsuite.Mark Wielaard2009-09-2522-24/+23
| | | | | | | | | | | | | | | | | | | | | | | | | * testsuite/buildok/fortysix.stp: Add -w. * testsuite/buildok/fortytwo.stp: Likewise. * testsuite/buildok/four.stp: Avoid empty begin. * testsuite/buildok/memory-all-probes.stp: Add -w. * testsuite/buildok/nfsd-all-probes.stp: Likewise. * testsuite/buildok/nine.stp: Likewise. * testsuite/buildok/one.stp: Use q. * testsuite/buildok/printf.stp: Remove unused foo(), printf x. * testsuite/buildok/process-all-probes.stp: Add -w. * testsuite/buildok/scheduler-all-probes.stp: Likewise. * testsuite/buildok/scsi-all-probes.stp: Likewise. * testsuite/buildok/signal-all-probes.stp: Likewise. * testsuite/buildok/sixteen.stp: log in foo(). * testsuite/buildok/socket-all-probes.stp: Add -w. * testsuite/buildok/stat_insert.stp: Declare x, y global. * testsuite/buildok/syscall.stp: Add -w. * testsuite/buildok/tcp-all-probes.stp: Likewise. * testsuite/buildok/thirtyone.stp: Likewise. * testsuite/buildok/twentyeight.stp: log absolute. * testsuite/buildok/twentyfour.stp: Add -w. * testsuite/buildok/udp-all-probes.stp: Likewise. * testsuite/buildok/vfs-all-probes.stp: Likewise.
* AUTHORS updateJosh Stone2009-09-242-2/+3
| | | | | * .mailmap: Normalize David (J.) Wilder. * AUTHORS: Rebuild, also adding Charley Wang & Roland Grunberg.
* Support DW_AT_const_value cases in loc2c and loc2c-test.Roland McGrath2009-09-243-16/+137
| | | | | | * loc2c.c (c_translate_constant): New function. * loc2c.h: Declare it. * loc2c-test.c (main): Use it for DW_AT_const_value cases.
* Added a basic ring_buffer transport test.David Smith2009-09-241-0/+32
| | | | * testsuite/systemtap.printf/ring_buffer.exp: New test.
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDavid Smith2009-09-245-8/+59
|\