summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Don't automatically authorize new root certificates as trusted signers.Dave Brolley2009-12-151-9/+1
|
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2009-12-1441-713/+2025
|\
| * Do not use condition_codes() on armEugeniy Meshcheryakov2009-12-131-1/+1
| | | | | | | | | | | | | | | | | | It does not exist in recent kernels. Use regs->ARM_cpsr instead, this should work with all versions of linux found in git repo (versions >=2.6.12-rc2). Difference between condition_codes() and regs->ARM_cpsr should not matter for systemtap.
| * Use env(SYSTEMTAP_TESTAPPS) for all systemtap.appsStan Cox2009-12-114-8/+19
| | | | | | | | | | | | | | | | mysql.exp: Use env(SYSTEMTAP_TESTAPPS). (mysqlrelease): Update and check for download failure. postgres.exp: Use env(SYSTEMTAP_TESTAPPS). stap-tcl.stp: Use .library("library").mark("mark"). tcl.exp: Likewise.
| * runtime build: fix alloc.c buildability on old gcc 3.4Frank Ch. Eigler2009-12-111-2/+2
| | | | | | | | * runtime/alloc.c (_stp_kmalloc): Move var decl back to top.
| * grapher: implement restarting a stap processTim Moore2009-12-113-48/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * grapher/StapParser.cxx (StapParser::disconnect): new function * grapher/StapParser.hxx (StapProcess::StapProcess): initialize argv to 0 * grapher/grapher.cxx (StapLauncher::setArgs): Set argv to 0 (StapLauncher launch, launchUsingParser): Refactor launch(), extracting function a that (re)launches a stap process using an existing parser. (StapLauncher::onChildDied): call disconnect() on dead parser. (GrapherWindow::_graphicalLauncher, setGraphicalLauncher): delete member, replacing with... (graphicalLauncher): new variable (ProcModelColumns): Store parser object in the list model instead of just a StapProcess object. (ProcWindow::onRestart): new function (ProcWindow::refresh): Preserve the list selection when the process list is refreshed. (ProcWindow::onSelectionChanged): Manage the restart button's state.
| * runtime: undefine DEBUG_MEM, retain alloc countingFrank Ch. Eigler2009-12-101-9/+10
| | | | | | | | | | | | | | DEBUG_MEM can & does evoke locking timeouts. * runtime/alloc.c (*): Track __stp_allocated_memory regardless of DEBUG_MEM.
| * runtime: print stp_alloc statistics in startup printkFrank Ch. Eigler2009-12-102-20/+13
| | | | | | | | | | * runtime/alloc.c: Define DEBUG_MEM. * runtime/print.c (_stp_print_kernel_info): Reformat/rescale mem values.
| * Merge commit 'origin/master'Tim Moore2009-12-106-27/+58
| |\
| | * Begin to parameterize loc2c for proper DWARF target address size.Roland McGrath2009-12-091-4/+15
| | | | | | | | | | | | | | | | | | * loc2c.c (stack_slot_type): New function. (translate): Use it in place of STACK_TYPE and UTYPE macros. (emit_loc_address, emit_loc_value, c_emit_location): Likewise.
| | * Fix regression in statistic operationsAnton Vorontsov2009-12-091-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 98c783852039061db8c1611742660aaded0eab77 ("Use proper types for do_div") I imprudently changed some variables to an unsigned type while in some places the code actually relies on a sign. So, let's be a bit smarter now and use temporary variables. Reported-by: Wenji Huang <wenji.huang@oracle.com> Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
| | * PR 10848 partial fix by using systemtap memory functions everywhere.David Smith2009-12-092-8/+12
| | | | | | | | | | | | | | | | | | | | | * runtime/addr-map.c (add_bad_addr_entry): Uses systemtap memory allocation/deallocation wrappers. * runtime/itrace.c (create_itrace_info): Ditto. (remove_usr_itrace_info): Ditto.
| | * Handle .probes section big endian 32 bit case.Stan Cox2009-12-092-9/+19
| | | | | | | | | | | | | | | | | | sdt.h (STAP_PROBE_ADDR): Add 32 bit big endian case. (STAP_PROBE_DATA_): Use .balign tapsets.cxx (sdt_query::get_next_probe): Stop if there is no probe name.
| * | grapher: integrate graph events from stdin with the stap process framework.Tim Moore2009-12-103-21/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was the original way to do graphing and had bitrotted some. * grapher/StapParser.cxx (initIO): new catchHUP argument (ioCallback): Only disconnect signals, etc. on IN_HUP if catchHUP is true. (errIoCallback): Write error messages to stderr, not stdout. * grapher/grapher.cxx (StapLauncher::launch): Don't catchHUP on our stap process children. (ProcWindow::refresh): Display something reasonable for the stap "process" that is feeding stdin. (main): Use StapParser::initIO to initialize parser reading from stdin.
| * | grapher: more implementation stap process windowTim Moore2009-12-102-155/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The process arguments are displayed, and the "kill" button is insensitive when a process is dead or nothing is selected. * grapher/grapher.cxx (ProcWindow _killButton, _restartButton, _stapArgsLabel, _scriptArgsLabel): new members (ProcWindow::ProcWindow): hook 'em up (ProcWindow::onSelectionChanged): Enable / disable kill button and display process arguments. * grapher/processwindow.glade: Replace bizzare handle window with a horizontal pane. Tweak various widget sizes.
| * | grapher: change SIGCHLD handling and exit cleanupTim Moore2009-12-101-115/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The signal handler now calls waitpid() and writes the pid and status to its pipe. * grapher.cxx (ChildInfo): new class (handleChild): wait for zombies and write their status down the pipe. (ChildDeathReader::ioCallback): Read dead child's pid from signal handler pipe and emit signal. (ChildDeathReader::reap): delete (ChildDeathReader::Callback): delete (StapLauncher::StapLauncher): Connect to childDied signal. (StapLauncher setWinParams, reap, cleanUp): delete (onChildDied): new function that updates the parsers list when a child dies. (GrapherWindow): Remove ChildDeathReader::Callback base class (GrapherWindow::onParserListChanged): New function; exits if program is quitting and no parsers are left. (on_menu_file_quit): Kill all children; don't hide (and exit) unless there are no parsers. (main): Don't do any cleanup after Gtk loop exits.
| * | show the status of stap processes in the process windowTim Moore2009-12-094-227/+418
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also, the "kill" button now works. * grapher/StapParser.hxx (_ioConnection, _errIoConnection): new members for sigc connections. (initIo): New function (parsers, parserListChangedSignal): new variables * grapher/StapParser.cxx (ioCallback): disconnect signals when child dies (initIo): new function * grapher/grapher.cxx (StapLauncher): eliminate death callback in favor of childDied signal. Use global parsers list (ProcWindow::_listSelection): new member (ProcWindow::show, hide, onParserListChanged, onSelectionChanged, onKill): new functions (ProcWindow::ProcWindow): Set up cell renderer for status icon * grapher/processwindow.glade: labels for display script and stap arguments
| * Merge commit 'origin/master'Tim Moore2009-12-089-142/+344
| |\
| | * Add .library("lib").mark("mark") and use it for .mark semaphores.Stan Cox2009-12-087-124/+271
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tapset-utrace.cxx (TOK_LIBRARY): New. (utrace_derived_probe::utrace_derived_probe): Add library and has_library. (utrace_builder::build): Handle library. (utrace_derived_probe_group::emit_probe_decl): Add sdt_sem_offset to emitted stap_utrace_probes. Add stap_task_finder_target mmap_callback for handling shared library. Handle sdt_sem_offset in emitted_stp_utrace_probe_cb. Add stap_utrace_mmap_found. (register_tapset_utrace): Handle .library tapset-utrace.cxx (TOK_LIBRARY): New. (base_query::base_query): Add path and has_library. (dwarf_derived_probe::dwarf_derived_probe) Likewise. (dwarf_derived_probe::register_patterns): Handle .library (sdt_query::convert_location): Likewise. (dwarf_builder::build): Likewise. (uprobe_derived_probe_group::emit_module_decls): Emit sdt_sem_address. Add sdt_sem_offset to emitted stap_uprobe_spec. Add offset and vm_flags to signature of stap_uprobe_change_plus, and handle sdt_sem_offset. Allow writeable segments in emitted stap_uprobe_mmap_found. sdt_misc.exp: Test .library util.cxx (find_executable): Add env_path to sig and use it in getenv. util.h (find_executable): Likewise. Make "PATH" the default. dtrace.in (provider): Turn on semaphores. sdt.h: Likewise.
| | * Revert "PR 10641 fixed by checking module name in unprivileged mode."David Smith2009-12-083-17/+0
| | | | | | | | | | | | | | | | | | | | | This reverts commit b2ea60606801aa9bf243f22318ac4bd8a25094fe. * main.cxx (checkOptions): Remove unprivileged mode module name check. * testsuite/parseko/cmdline05.stp: Delete unneeded testcase. * testsuite/parseok/cmdline03.stp: Ditto.
| | * Add dtrace -I support.Mark Wielaard2009-12-082-17/+70
| | | | | | | | | | | | | | | | | | | | | | | | dtrace -I is used to pass through include paths to cpp when run. Thanks to David Malcolm <dmalcolm@redhat.com> for python coding and testing. * dtrace.in: Add -I support. * testsuite/systemtap.base/dtrace.exp: Add testcases for -C -I and -G -I.
| | * PR 10641 fixed by checking module name in unprivileged mode.David Smith2009-12-073-0/+17
| | | | | | | | | | | | | | | | | | | | | * main.cxx (checkOptions): If in unprivileged mode, make sure module name starts with 'stap_'. * testsuite/parseko/cmdline05.stp: New testcase. * testsuite/parseok/cmdline03.stp: New testcase.
| | * Small compile server shutdown fix.David Smith2009-12-071-1/+3
| | | | | | | | | | | | | | | * testsuite/lib/systemtap.exp (shutdown_server): Only remove the temporary stap script if it exists.
| * | grapher: start of a dialog for displaying active stap processesTim Moore2009-12-087-59/+573
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The names of active scripts are displayed in a list; mock buttons suggest being able to stop and restart them. * grapher/processwindow.glade: new file * grapher/Makefile.am: add processwindow.glade to installed files * grapher/StapParser.hxx (StapProcess): new class (StapParser): factor out members that are now in StapProcess (ioCallback): Use the new childDied signal instead of aborting the whole grapher when a child dies. * grapher/grapher.cxx (ProcModelColumns, ProcWindow): classes for displaying stap process window. (GrapherWindow::on_menu_proc_window): new function
| * | refactor list of data sets out of GraphWidget into a global data structure.Tim Moore2009-12-088-32/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also, add a sigc signal for broadcasting data set changes. * grapher/GraphData.hxx (GraphDataList) new typedef (getGraphData, graphDataSignal): new functions * grapher/Graph.hxx (DatasetList): remove typedef in favor of systemtap::GraphDataList * grapher/GraphWidget.cxx (GraphWidget, onGraphDataChanged): Use graphDataSignal to notice new data sets that need to be added. Use the global data set list instead of one embedded in GraphWidget. * grapher/StapParser.hxx: delete the _widget member; use signals to broadcast that there are new data sets instead of calling into the widget.
| * | tiny refactoring of signal and pipe codeTim Moore2009-12-081-11/+6
| |/
| * add copyright and license to grapher filesTim Moore2009-12-0712-0/+96
| |
| * make the list items in the data set list unselectableTim Moore2009-12-072-1/+13
| | | | | | | | | | | | | | | | | | | | The checkbox selects the list, so it is just sloppy to allow the item to be selected. * grapher/GraphWidget.hxx (no_select_fun): New function; just returns false. * grapher/GraphWidget.cxx (GraphWidget): Connect list store selection to function that prevents selection.
| * Change data set list display to use a check box for inclusion in a graphTim Moore2009-12-073-100/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Incidently, this supports removing a data set from a graph. Also, remove the Add, Remove, and Cancel buttons from the data set dialog. * grapher/GraphWidget.hxx (DataModelColumns::_dataEnabled): new member _listConnection: new member * grapher/GraphWidget.cxx (GraphWidget): Delete connections for removed buttons. Connect to dialog show and hide signals instead of map. Add "Enabled" column to dialog list. (onDataAdd, onDataRemove): delete (onDataDialogOpen): Initialize list store with all data sets and hook up row_changed signal (onDataDialogClose, onRowChanged): new functions * grapher/graph-dialog.glade: Remove obsolete buttons (Add, Remove, Cancel).
| * Merge branch 'master' of ssh://sourceware.org/git/systemtapTim Moore2009-12-072-10/+8
| |\
| | * Fix regression introduced by commit 379c585Wenji Huang2009-12-072-10/+8
| | |
| * | option to display graph times relative to the start timeTim Moore2009-12-075-6/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids having humongous numbers displayed on the graphs' x axis. Also, the dialog for adding a data set to a graph was cleaned up. * grapher/graph-dialog.glade: Add check box for display of relative time and a label for the data set list. Force the list of data sets to be larger. * grapher/Graph.hxx (_timeBase): new member * grapher/Graph.cxx (draw): Subtract _timeBase from displayed time value. * grapher/GraphWidget.hxx (DataModelColumns): Add a column for a data set's title, which is optional at the moment. * grapher/GraphWidget.hxx (_globalTimeBase, _timeBaseInitialized, _relativeTimesButton, _displayRelativeTimes): new members * grapher/GraphWidget.hxx (GraphWidget): Hook up check button for displaying relative time. (on_expose_event): Determine base time if needed; set base time in graphs. (onDataDialogOpen): Insert graph data set's name (key) and title into the list of data sets.
| * | Add a missing cairo context restore()Tim Moore2009-12-071-0/+1
| |/ | | | | | | | | | | | | It's not clear if this was causing any ill effects, but it is certainly bad form. * grapher/GraphWidget.cxx (on_expose_event): add missing cr->restore().
| * Add new graph output to the last graphTim Moore2009-12-041-1/+1
| |
| * restore event square colorTim Moore2009-12-041-0/+2
| | | | | | | | | | * grapher/GraphStyle.cxx (GraphStyleEvent::draw): set event color in inner loop.
| * hover text on the additional graphsTim Moore2009-12-042-2/+10
| | | | | | | | | | | | | | | | | | * grapher/Graph.cxx (window2GraphCoords): Take the entire graph's position into account too. * grapher/GraphWidget.cxx (GraphWidget): Hook up the data dialog's OK button. (onDataDialogOpen): If a data set doesn't have a title, use it's name (key) instead.
| * tweak multiline hover text to have proper interline spacingTim Moore2009-12-042-8/+16
| | | | | | | | | | | | | | | | * grapher/CairoWidget.cxx (CairoTextBox::draw): Use font information to caculate legible spacing. Also change the font to something more readable. * testsuite/systemtap.examples/general/grapher.stp: Put carriage returns in the right spots.
| * support multiline data output from scripts run under the grapherTim Moore2009-12-045-20/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is accompanied by support for multiline output in hover text. * grapher/StapParser.cxx (ioCallback): Read data 'til the end of line character, not just '\n'. Be careful to use I/O functions that don't treat '\n' specially. * grapher/StapParser.hxx: ditto * grapher/CairoWidget.cxx (CairoTextBox::draw): Perform line breaks for hover text. * testsuite/systemtap.examples/general/grapher.stp: Do multiline output of keyboard events. Also, fix longstanding breaking in the pty probe.
| * Merge commit 'origin/master'Tim Moore2009-12-033-11/+33
| |\
| | * PR11020: Check switch_file global flag inside inner loop for busy scriptsMasami Hiramatsu2009-12-031-2/+4
| | | | | | | | | | | | | | | * runtime/staprun/relay.c (reader_thread): Check switch_file thread flags inside inner read-write loop. And clear the flags after switching file.
| * | Error check in hover text code for empty graphsTim Moore2009-12-031-2/+4
| | | | | | | | | | | | | | | * grapher/GraphStyle.cxx(GraphStyleEvent::dataIndexAtPoint, GraphStyleBar::dataIndexAtPoint): check for empty graph data
| * | Hover text for event-style graphsTim Moore2009-12-034-13/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | Don't draw the data value for an event; only display it in hover text. * grapher/Graph.hxx (window2GraphCoords): new function * grapher/Graph.cxx (window2GraphCoords): ditto * grapher/GraphStyle.cxx (GraphStyleEvent::dataIndexAtPoint): new function implementation.
* | | Suppress output from stap-gen-cert when installing the systemtap-server package.Dave Brolley2009-12-141-1/+1
| | |
* | | PR 10905: Initscript improvements: Automatically authorize the initscript ↵Dave Brolley2009-12-141-0/+7
| | | | | | | | | | | | servers as trusted servers and signers.
* | | Clean up NSS after errors occur during verification.Dave Brolley2009-12-141-0/+3
| | |
* | | PR 10905: stap-server initscript improvementsDave Brolley2009-12-143-118/+486
| | | | | | | | | | | | | | | | | | | | | o Handle, -B, -I, -R options o Allow specification of servers by pid o Allow specification of servers by nickname. o Advertise options used using avahi.
* | | PR 10905 Ground Work: Save server status as PID files with the server config ↵Dave Brolley2009-12-081-149/+210
| | | | | | | | | | | | as contents.
* | | Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2009-12-0268-4118/+5769
|\ \ \ | | |/ | |/|
| * | Fix PR 11034 by directly allocating per-cpu context data.David Smith2009-12-022-9/+29
| |/ | | | | | | | | | | | | | | | | | | | | * translate.cxx (emit_common_header): Change type of 'contexts' to an array of struct context pointers. (emit_module_init): Allocate a context structure for each possible cpu. Free each if an error occurs. (emit_module_exit): Update contexts reference. Free each possible cpu's context structure. * tapsets.cxx (common_probe_entryfn_prologue): Use array instead of percpu data for context structure.
| * Make the hover text conform to data displayed.Tim Moore2009-12-027-26/+73
| | | | | | | | | | | | | | | | | | Start of code to be more selective about the association between the hover text and the underling graph. Also, show the data set name in hover text. * grapher/GraphStyle.hxx (dataIndexAtPoint): New virtual function. * grapher/GraphStyle.cxx (dataIndexAtPoint): Implementation for bar graphs * grapher/GraphWidget.cxx (onHoverTimeout): Use dataIndexAtPoint.