]> sourceware.org Git - systemtap.git/log
systemtap.git
14 years agoMerge branch 'master' of ssh://mark@sourceware.org/git/systemtap
Mark Wielaard [Mon, 10 Aug 2009 16:28:40 +0000 (18:28 +0200)]
Merge branch 'master' of ssh://mark@sourceware.org/git/systemtap

14 years agoPR10506 experiment: use /sbin/insmod for uprobes.ko loading
Frank Ch. Eigler [Mon, 10 Aug 2009 16:13:31 +0000 (12:13 -0400)]
PR10506 experiment: use /sbin/insmod for uprobes.ko loading

* runtime/staprun/staprun.c (enable_uprobes): insmod, not insert_module().

14 years agoOnly add extra error on no probes found if no previous errors already shown.
Mark Wielaard [Mon, 10 Aug 2009 15:44:31 +0000 (17:44 +0200)]
Only add extra error on no probes found if no previous errors already shown.

* elaborate.cxx (semantic_pass): Don't add "no probes found" if session
  already had other errors.

14 years agoIt is not an error or warning if the local database of authorized signing
Dave Brolley [Mon, 10 Aug 2009 15:47:17 +0000 (11:47 -0400)]
It is not an error or warning if the local database of authorized signing
certificates does not exist. It just means that the signed module is untrusted.

14 years agoUse nop instructions without parameters on arm
Eugeniy Meshcheryakov [Sat, 8 Aug 2009 13:51:44 +0000 (15:51 +0200)]
Use nop instructions without parameters on arm

Fixes FTBFS, see
https://buildd.debian.org/fetch.cgi?pkg=systemtap;ver=0.9.9-1;arch=armel;stamp=1249664825

14 years agoMake files executable
Eugeniy Meshcheryakov [Fri, 7 Aug 2009 14:40:18 +0000 (16:40 +0200)]
Make files executable

14 years agoDo not use plain [] in help string in configure.ac
Eugeniy Meshcheryakov [Fri, 7 Aug 2009 14:31:36 +0000 (16:31 +0200)]
Do not use plain [] in help string in configure.ac

This confuses Debian's automake.

14 years agoPR10486 Raise default MAXSTRINGLEN.
Mark Wielaard [Thu, 6 Aug 2009 22:01:04 +0000 (00:01 +0200)]
PR10486 Raise default MAXSTRINGLEN.

* translate.cxx (translate_pass): Raise MAXSTRINGLEN to 256 for 32bit arches
  and to 512 for 64bit arches.
* testsuite/systemtap.context/backtrace.tcl: Don't set MAXSTRINGLEN.
* testsuite/systemtap.exelib/ustack.tcl: Likewise.
* testsuite/systemtap.string/str_replace.exp: Explicitly set MAXSTRINGLEN.

14 years agoFix a couple of sdt_query reorg problems.
Stan Cox [Thu, 6 Aug 2009 20:20:39 +0000 (16:20 -0400)]
Fix a couple of sdt_query reorg problems.

* 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

14 years agoMerge branch 'master' of git://sources.redhat.com/git/systemtap
Dave Brolley [Thu, 6 Aug 2009 18:40:20 +0000 (14:40 -0400)]
Merge branch 'master' of git://sources.redhat.com/git/systemtap

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
David Smith [Thu, 6 Aug 2009 18:36:37 +0000 (13:36 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoWorks with or without a ring_buffer_iter.
David Smith [Thu, 6 Aug 2009 18:35:11 +0000 (13:35 -0500)]
Works with or without a ring_buffer_iter.
* runtime/transport/ring_buffer.c (_stp_find_next_event): Works with or
  without a ring_buffer iterator.
  (_stp_find_next_event): Ditto.
  (_stp_data_read_trace): Ifdef'ed out using ring_buffer iterators.
  (_stp_get_iterator): New function.
  (_stp_data_write_reserve): Calls _stp_get_iterator().

14 years agoMerge branch 'master' of git://sources.redhat.com/git/systemtap
Dave Brolley [Thu, 6 Aug 2009 18:35:08 +0000 (14:35 -0400)]
Merge branch 'master' of git://sources.redhat.com/git/systemtap

14 years agoFix missing strlen compile error.
Stan Cox [Thu, 6 Aug 2009 18:27:48 +0000 (14:27 -0400)]
Fix missing strlen compile error.

StapParser.cxx (#include cstring): New.

14 years ago2009-08-06 Dave Brolley <brolley@redhat.com>
Dave Brolley [Thu, 6 Aug 2009 16:25:50 +0000 (12:25 -0400)]
2009-08-06  Dave Brolley  <brolley@redhat.com>

        * modverify.c (staprun.h): #include it.
        (verify_it): Now accepts module data and signature data as arguments.
        Don't open and read the signature here. Don't read the module here.
        (verify_module): Now accepts module data as argument. Read the signature

        once here.
        * modverify.h (verify_module): Now accepts module data as argument.
        * staprun.c (main): Don't call check_permissions here.
        * staprun.h (check_permissions): Prototype removed.
        * staprun_funcs.c (check_permissions): Now static. Accepts module data
        as argument. Pass module data to check_signature.
        (insert_module): Canonicalize the module path early here. Call
        check_permissions here, passing it the mapped module data.
        (check_signature): Now accepts module data as argument. Pass the module
        data to verify_module.
        (check_path): Use the already-canonicalized module path.

14 years agoRH515870 Error message about missing module uprobes when updating.
Mark Wielaard [Thu, 6 Aug 2009 15:46:27 +0000 (17:46 +0200)]
RH515870 Error message about missing module uprobes when updating.

Fix 3>&1 typo.

* systemtap.spec: Use 2>&1 to redirect error messages.

14 years agoPR10294: support wider range for statement probe
Wenji Huang [Thu, 6 Aug 2009 02:58:46 +0000 (22:58 -0400)]
PR10294: support wider range for statement probe

* 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.

14 years agoPR10491 Don't assign to REG_IP if it isn't an lvalue (s390 and ia64).
Mark Wielaard [Thu, 6 Aug 2009 08:41:46 +0000 (10:41 +0200)]
PR10491 Don't assign to REG_IP if it isn't an lvalue (s390 and ia64).

To fixup REG_IP to show the correct value after a [ku]probe trap we
assigned the address of the actual instruction pointer of the probed
instruction. That doesn't work on architectures, s390 and ia64, where
REG_IP is not a simple lvalue. Just don't try to fixup the address in
those cases. If this isn't enough, the uprobe_stmt_num.exp testcase
will point this out.

* runtime/regs.h: Define REG_IP_LVALUE for x86_64, i386, powerpc64 and arm.
* tapsets.cxx (dwarf_derived_probe_group::emit_module_decls): Only fixup
  REG_IP when REG_IP_LVALUE is defined.
  (uprobe_derived_probe_group::emit_module_decls): Likewise.
  (kprobe_derived_probe_group::emit_module_decls): Likewise.

14 years agoRemove as_root calls from the printf testsuite
Josh Stone [Thu, 6 Aug 2009 00:56:44 +0000 (17:56 -0700)]
Remove as_root calls from the printf testsuite

Once upon a time, we would use sudo staprun, and so output files from
"-o" were owned by root.  For a while now we've used a setuid staprun
instead, and the output files are created by stapio as the user.  Thus,
we don't need as_root to remove those files anymore.

* testsuite/systemtap.printf/end1b.exp: Clean up without as_root.
* testsuite/systemtap.printf/mixed_outb.exp: Ditto.
* testsuite/systemtap.printf/out1b.exp: Ditto.
* testsuite/systemtap.printf/out2b.exp: Ditto.
* testsuite/systemtap.printf/out3b.exp: Ditto.

14 years agoDon't spawn uprobes tests with sudo
Josh Stone [Wed, 5 Aug 2009 23:55:24 +0000 (16:55 -0700)]
Don't spawn uprobes tests with sudo

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.

14 years agoFix compile error when not HAVE_NSS with staprun.
Maran [Wed, 5 Aug 2009 13:36:01 +0000 (15:36 +0200)]
Fix compile error when not HAVE_NSS with staprun.

* runtime/staprun/staprun_funcs.c (check_permissions): Declare
  check_signature_rc outside HAVE_NSS block.

Signed-off-by: Mark Wielaard <mjw@redhat.com>
14 years agoMerge branch 'release'
Josh Stone [Wed, 5 Aug 2009 04:09:18 +0000 (21:09 -0700)]
Merge branch 'release'

14 years agoVersion bumps for the 0.9.9 release release-0.9.9
Josh Stone [Wed, 5 Aug 2009 00:42:09 +0000 (17:42 -0700)]
Version bumps for the 0.9.9 release

14 years agoFix grapher compilation warnings from rpm build
Josh Stone [Wed, 5 Aug 2009 03:29:51 +0000 (20:29 -0700)]
Fix grapher compilation warnings from rpm build

* grapher/Graph.cxx (Graph::Graph): Initialize in declaration order.
* grapher/GraphWidget.cxx (GraphWidget::on_expose_event): Remove several
  unused local variables.

14 years agoMerge branch 'master' of git://sources.redhat.com/git/systemtap
Dave Brolley [Tue, 4 Aug 2009 23:19:31 +0000 (19:19 -0400)]
Merge branch 'master' of git://sources.redhat.com/git/systemtap

14 years agoAdd NEWS about unprivileged user support
Dave Brolley [Tue, 4 Aug 2009 23:19:09 +0000 (19:19 -0400)]
Add NEWS about unprivileged user support

14 years agoAdd many more NEWS entries for recent features
Josh Stone [Tue, 4 Aug 2009 22:52:08 +0000 (15:52 -0700)]
Add many more NEWS entries for recent features

14 years agoRename and package the grapher
Josh Stone [Tue, 4 Aug 2009 22:11:44 +0000 (15:11 -0700)]
Rename and package the grapher

* grapher/Makefile.am: Rename the binary to stapgraph.
* grapher/Makefile.in: Regen.
* systemtap.spec: Add a -grapher subpackage.

14 years agoAdd NEWS on stapgraph
Tim Moore [Tue, 4 Aug 2009 21:57:10 +0000 (23:57 +0200)]
Add NEWS on stapgraph

14 years agoAdd NEWS on DW_OP_call_frame_CFA, uprobes/ustack, .probes and statement().
Mark Wielaard [Tue, 4 Aug 2009 20:52:43 +0000 (22:52 +0200)]
Add NEWS on DW_OP_call_frame_CFA, uprobes/ustack, .probes and statement().

14 years agoAdd #include and casting to allow compilations of grapher on RHEL5.
William Cohen [Tue, 4 Aug 2009 18:00:07 +0000 (14:00 -0400)]
Add #include and casting to allow compilations of grapher on RHEL5.

14 years agoMerge branch 'master' of git://sources.redhat.com/git/systemtap
Dave Brolley [Tue, 4 Aug 2009 16:35:41 +0000 (12:35 -0400)]
Merge branch 'master' of git://sources.redhat.com/git/systemtap

Conflicts:

cache.cxx

14 years agoAdd update_visitor::replace
Josh Stone [Mon, 3 Aug 2009 22:49:40 +0000 (15:49 -0700)]
Add update_visitor::replace

I noticed that most uses of update_visitor::require() were simply
writing the value back to the same place, i.e. foo = require(foo).  The
new replace() method just encapsulates that paradigm, so we don't have
the duplication between the LHS and RHS.

* staptree.h (update_visitor::replace): New.
* elaborate.cxx, staptree.cxx, tapset-mark.cxx, tapset-perfmon.cxx,
  tapset-procfs.cxx, tapset-utrace.cxx, tapsets.cxx: Update all require
  calls that are simply updating the value in-place.

14 years agoStrengthen the template types in update_visitor
Josh Stone [Mon, 3 Aug 2009 22:20:19 +0000 (15:20 -0700)]
Strengthen the template types in update_visitor

* staptree.h (update_visitor::require, provide): Make the parameters and
  return values a T*, to make it explicit that we want pointer types.

14 years agoMerge branch 'array_index'
Josh Stone [Mon, 3 Aug 2009 22:16:09 +0000 (15:16 -0700)]
Merge branch 'array_index'

14 years agoPR2049: support arbitrary $target-array indexing
Josh Stone [Mon, 3 Aug 2009 21:45:21 +0000 (14:45 -0700)]
PR2049: support arbitrary $target-array indexing

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.

14 years agoPR10475: ensure that loc2c can find its array size
Josh Stone [Mon, 3 Aug 2009 21:20:46 +0000 (14:20 -0700)]
PR10475: ensure that loc2c can find its array size

* loc2c.c (array_stride): iterate DIEs past typedef/const/volatile

14 years agoMake sure we pick up our own sdt.h, not the (maybe not installed) system one.
Mark Wielaard [Mon, 3 Aug 2009 15:02:03 +0000 (17:02 +0200)]
Make sure we pick up our own sdt.h, not the (maybe not installed) system one.

* Makefile.am (AM_CPPFLAGS): Add -I$(srcdir)/includes.
* Makefile.in: Regenerated.

14 years agoUnify no-component assertions on target variables
Josh Stone [Sat, 1 Aug 2009 00:24:13 +0000 (17:24 -0700)]
Unify no-component assertions on target variables

There are several tapsets that can't deal with component dereferences on
their target variables, and they all check-and-throw in the same way.
This refactors the checks into a target_symbol member.

* staptree.cxx (target_symbol::assert_no_components): New.
* tapsets.cxx (tracepoint_var_expanding_visitor::visit_target_symbol_arg,
  tracepoint_var_expanding_visitor::visit_target_symbol_context): Use
  the new assertion function to check for no components.
* tapset-mark.cxx (mark_var_expanding_visitor::visit_target_symbol_arg,
  mark_var_expanding_visitor::visit_target_symbol_context): Ditto.
* tapset-perfmon.cxx (perfmon_var_expanding_visitor::visit_target_symbol): Ditto.
* tapset-procfs.cxx (procfs_var_expanding_visitor::visit_target_symbol): Ditto.
* tapset-utrace.cxx (utrace_var_expanding_visitor::visit_target_symbol_arg,
  utrace_var_expanding_visitor::visit_target_symbol_context): Ditto.

14 years agoMake a real type for target_symbol->components
Josh Stone [Sat, 1 Aug 2009 00:00:09 +0000 (17:00 -0700)]
Make a real type for target_symbol->components

Now the dereferences on target_symbol and cast_op are tracked with a
struct instead of just a generic pair.  The first immediate benefit is
that we can track the token for more exact error reporting.

* staptree.h (target_symbol): Add a new component type.
* staptree.cxx (target_symbol::component::print): New.
  (operator<<(ostream&, target_symbol::component&): New.
  (target_symbol::print): Adapt component printing.
  (cast_op::print): Ditto.
* parse.cxx (parser::parse_target_symbol_components): Adapt to the new
  component construction.
* dwflpp.cxx (dwflpp::find_struct_member): take the component as a
  parameter for a better token in error messages
  (dwflpp::translate_components): Adapt to the new component type.
* tapsets.cxx (dwarf_var_expanding_visitor::visit_target_symbol): Don't
  overwrite the token in target_symbol saved errors.
  (tracepoint_var_expanding_visitor::visit_target_symbol_arg): Ditto.

14 years agoRefactor parser for target_symbol->components
Josh Stone [Fri, 31 Jul 2009 20:46:54 +0000 (13:46 -0700)]
Refactor parser for target_symbol->components

The components were being parsed for both target_symbols and cast_ops,
so this change refactors that code into a single function.

* parse.cxx (parser::parse_target_symbol_components): New.
  (parser::parse_symbol): Use the new function.

14 years agoDrop a couple of unnecessary std:: qualifiers
Josh Stone [Fri, 31 Jul 2009 20:29:18 +0000 (13:29 -0700)]
Drop a couple of unnecessary std:: qualifiers

* staptree.cxx (target_symbol::print): Drop std:: from parameter o.
  (cast_op::print): Ditto.

14 years agoNEWS: note faster pass-2
Frank Ch. Eigler [Fri, 31 Jul 2009 21:51:22 +0000 (17:51 -0400)]
NEWS: note faster pass-2

14 years agoPR10204: Place userspace markers in systemtap itself
Kent Sebastian [Fri, 31 Jul 2009 20:35:20 +0000 (16:35 -0400)]
PR10204: Place userspace markers in systemtap itself

* tapset/stap_staticmarkers.stp: new file (for real this time)

14 years agoMerge branch 'master' of git+ssh://sources.redhat.com/git/systemtap
Kent Sebastian [Fri, 31 Jul 2009 20:34:25 +0000 (16:34 -0400)]
Merge branch 'master' of git+ssh://sources.redhat.com/git/systemtap

14 years agoPR10204: Place userspace markers in systemtap itself
Kent Sebastian [Fri, 31 Jul 2009 18:45:10 +0000 (14:45 -0400)]
PR10204: Place userspace markers in systemtap itself

* cache.cxx (add_to_cache,clean_cache): add static markers
* main.cxx (main): likewise
* runtime/staprun/common.c (send_request): likewise
* runtime/staprun/mainloop.c (stp_main_loop): likewise
* runtime/staprun/staprun.c (remove_module): likewise
* runtime/staprun/staprun.h: include sdt.h
* runtime/staprun/staprun_funcs.c (insert_module): likewise
* util.cxx (stap_system): likewise
* tapset/stap_staticmarkers.stp: new file

14 years agoAdd testcase for PR10458, PR10459 and PR10454.
Mark Wielaard [Fri, 31 Jul 2009 17:54:53 +0000 (19:54 +0200)]
Add testcase for PR10458, PR10459 and PR10454.

Last test currently disabled because PR10454 is still open.

* testsuite/systemtap.context/uprobe_stmt_num.exp: New file.
* testsuite/systemtap.context/uprobe_stmt_num.stp: Likewise.
* testsuite/systemtap.context/uprobe_stmt_num.c: Likewise.

14 years agoPR10458. User actual breakpoint address for [ku]probe[ret].
Mark Wielaard [Fri, 31 Jul 2009 16:46:47 +0000 (18:46 +0200)]
PR10458. User actual breakpoint address for [ku]probe[ret].

Setup the pt_regs REG_IP to the actual breakpoint address before
entering a probe handler for [ku]probe[ret] (and restore it after
returning). This helps getting symbol resolution and backtraces
more correct and makes it more conform with other probe handlers
like the iutrace and profile timers that also provide pt_regs
(which untill now exhibited off-by-one errors while unwinding).

* tapsets.cxx (dwarf_derived_probe_group::emit_module_decls):
  Setup REG_IP correctly before calling enter_kprobe_probe
  and enter_kretprobe_probe, and restore afterwards.
  (uprobe_derived_probe_group::emit_module_decls): Likewise for
  enter_uprobe_probe and enter_uretprobe_probe.
  (kprobe_derived_probe_group::emit_module_decls): Likewise for
  enter_kprobe2_probe and enter_kretprobe2_probe.
* runtime/unwind/i386.h (arch_unw_init_frame_info): Initialize
  info->call_frame to zero.
* runtime/unwind/x86_64.h (arch_unw_init_frame_info): Likewise.

14 years agoRelax the type-matching in the cmd_parse13 test
Josh Stone [Fri, 31 Jul 2009 02:24:17 +0000 (19:24 -0700)]
Relax the type-matching in the cmd_parse13 test

Dwarf probes are now printing their $target variables in -L, so we need
to handle more than just stap types in the regular expression.

14 years agodtrace.in: Don't interpret -h -o FILE, just use the filename as is.
Stan Cox [Thu, 30 Jul 2009 21:04:09 +0000 (17:04 -0400)]
dtrace.in: Don't interpret -h -o FILE, just use the filename as is.

14 years agoPR10459. Disable all warning messages on -w.
Mark Wielaard [Wed, 29 Jul 2009 22:06:59 +0000 (00:06 +0200)]
PR10459. Disable all warning messages on -w.

* 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.

14 years agoRemove unused result_string from ustack.tcl.
Mark Wielaard [Wed, 29 Jul 2009 21:26:26 +0000 (23:26 +0200)]
Remove unused result_string from ustack.tcl.

* testsuite/systemtap.exelib/ustack.tcl: Remove result_string.

14 years agoEnable variable listing (-L) for uprobes
Josh Stone [Wed, 29 Jul 2009 21:34:32 +0000 (14:34 -0700)]
Enable variable listing (-L) for uprobes

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

14 years agoEnable variable listing (-L) for dwarf probes
Josh Stone [Wed, 29 Jul 2009 21:07:37 +0000 (14:07 -0700)]
Enable variable listing (-L) for dwarf probes

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

14 years agoUse a real session flag for -L
Josh Stone [Wed, 29 Jul 2009 19:35:29 +0000 (12:35 -0700)]
Use a real session flag for -L

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

14 years agoBreak up dwarf_var_expanding_visitor::visit_target_symbol
Josh Stone [Wed, 29 Jul 2009 19:13:40 +0000 (12:13 -0700)]
Break up dwarf_var_expanding_visitor::visit_target_symbol

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

14 years agoPR6978: support $$parms for process.syscall
Wenji Huang [Tue, 28 Jul 2009 23:50:24 +0000 (19:50 -0400)]
PR6978: support $$parms for process.syscall

* 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.

14 years agoPR10453: Fix crash.exp not to refer removed file
Masami Hiramatsu [Tue, 28 Jul 2009 21:26:55 +0000 (17:26 -0400)]
PR10453: Fix crash.exp not to refer removed file

* systemtap.base/crash.exp: Use command-line script instead of removed
  script file.

14 years agoImproves functionality on rawhide (2.6.31-rcX) kernels.
David Smith [Tue, 28 Jul 2009 19:40:41 +0000 (14:40 -0500)]
Improves functionality on rawhide (2.6.31-rcX) kernels.
* 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.

14 years agoInstall yum-utils when yumdownloader is missing first in stapprep.sh.
Mark Wielaard [Tue, 28 Jul 2009 09:57:27 +0000 (11:57 +0200)]
Install yum-utils when yumdownloader is missing first in stapprep.sh.

* doc/SystemTap_Beginners_Guide/en-US/extras/stapprep.sh: Check whether
  yumdownloader is already available and install yum-utils if not.

14 years agoSupport for presenting multiple graphs
Tim Moore [Mon, 27 Jul 2009 10:46:30 +0000 (12:46 +0200)]
Support for presenting multiple graphs

* 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.

14 years agographer fixups
Tim Moore [Thu, 4 Jun 2009 13:49:16 +0000 (15:49 +0200)]
grapher fixups

* grapher/grapher.cxx (main): Fix problems with call to execlp.

14 years agoTemplatize GraphData
Tim Moore [Wed, 27 May 2009 08:32:51 +0000 (10:32 +0200)]
Templatize GraphData

* 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

14 years agorun stap from grapher
Tim Moore [Mon, 25 May 2009 16:25:47 +0000 (18:25 +0200)]
run stap from grapher

* grapher/grapher.cxx (main): Start stap + script from program if supplied
as an argument.

14 years agoIncorporate grapher widget in real application
Tim Moore [Mon, 25 May 2009 16:12:41 +0000 (18:12 +0200)]
Incorporate grapher widget in real application

* grapher/grapher.cxx (GrapherWindow): New class.
(main): Instantiate GrapherWindow.

14 years agoAdd CSV syntax support to the grapher
Tim Moore [Wed, 20 May 2009 11:29:54 +0000 (13:29 +0200)]
Add CSV syntax support to the grapher

* grapher/GraphData.hxx (CSVData): new class
* grapher/GraphData.cxx (commaSplit): new function
(ioCallback): handle CSV definition and data

14 years agoRefactor StapParser into its own files
Tim Moore [Wed, 29 Apr 2009 17:52:50 +0000 (19:52 +0200)]
Refactor StapParser into its own files

* grapher/StapParser.cxx: new file
* grapher/StapParser.hxx: new file
* grapher/grapher.cxx: Use external StapParser class.

14 years agoTweaks to grapher axis drawing
Tim Moore [Wed, 22 Apr 2009 08:20:20 +0000 (10:20 +0200)]
Tweaks to grapher axis drawing

* grapher/GraphWidget.cxx (on_expose_event): Don't draw axis labels
that would overlap others.

14 years agorestore newlines to grapher script header
Tim Moore [Wed, 22 Apr 2009 07:12:27 +0000 (09:12 +0200)]
restore newlines to grapher script header

* testsuite/systemtap.examples/general/grapher.stp: Restore newlines.

14 years agoPR6905: tweak WILDCARD and RANGE line type for process.statement
Wenji Huang [Mon, 27 Jul 2009 19:52:28 +0000 (15:52 -0400)]
PR6905: tweak WILDCARD and RANGE line type for process.statement

* 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.

14 years agoMention where we looked and if we didn't find line info on statement probe.
Mark Wielaard [Mon, 27 Jul 2009 19:48:53 +0000 (21:48 +0200)]
Mention where we looked and if we didn't find line info on statement probe.

* tapsets.cxx (query_cu): When statement check fails and no line info
  available, mention the CU had no line info.

14 years agoMerge branch 'master' of git://sources.redhat.com/git/systemtap
Dave Brolley [Mon, 27 Jul 2009 15:58:17 +0000 (11:58 -0400)]
Merge branch 'master' of git://sources.redhat.com/git/systemtap

14 years agoExplicitly link with nss3 nspr4 and plc4 when used.
Mark Wielaard [Sat, 25 Jul 2009 09:42:54 +0000 (11:42 +0200)]
Explicitly link with nss3 nspr4 and plc4 when used.

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.

15 years agoMerge branch 'master' of git://sources.redhat.com/git/systemtap
Dave Brolley [Fri, 24 Jul 2009 15:35:06 +0000 (11:35 -0400)]
Merge branch 'master' of git://sources.redhat.com/git/systemtap

15 years agoPR6898: support $$vars and $$parms for marker
Wenji Huang [Thu, 23 Jul 2009 23:04:13 +0000 (19:04 -0400)]
PR6898: support $$vars and $$parms for marker

* tapset-mark.cxx (visit_target_symbol_context): Add $$vars/$$parms.
* testsuite/systemtap.base/marker.exp : Test case.

15 years agoMerge branch 'master' of git://sources.redhat.com/git/systemtap
Dave Brolley [Thu, 23 Jul 2009 16:43:03 +0000 (12:43 -0400)]
Merge branch 'master' of git://sources.redhat.com/git/systemtap

15 years agoWorkaround cfa_nops not being needed on earlier elfutils.
Mark Wielaard [Thu, 23 Jul 2009 10:02:11 +0000 (12:02 +0200)]
Workaround cfa_nops not being needed on earlier elfutils.

* dwflpp.cxx (get_cfa_ops): Only define cfa_nops if _ELFUTILS_PREREQ(0,142).
* loc2c-test.c (main): Likewise.

15 years agoAdjust to new elfutils dwarf_frame_cfa interface.
Mark Wielaard [Thu, 23 Jul 2009 09:53:03 +0000 (11:53 +0200)]
Adjust to new elfutils dwarf_frame_cfa interface.

* dwflpp.cxx (get_cfa_ops): Call dwarf_frame_cfa with cfa_nops size_t.
* loc2c-test.c (main): Likewise.

15 years agoMake ring_buffer transport work on new kernels.
David Smith [Wed, 22 Jul 2009 19:42:18 +0000 (14:42 -0500)]
Make ring_buffer transport work on new kernels.
* 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.

15 years agoPR10427 Multiple tracepoints OK!
Mark Wielaard [Wed, 22 Jul 2009 12:59:54 +0000 (14:59 +0200)]
PR10427 Multiple tracepoints OK!

* testsuite/systemtap.base/tracepoints.stp: Only print once, when enough hits,
  or at the begin probe.

15 years agoUse the query paradigm for resolving sdt probes
Josh Stone [Wed, 22 Jul 2009 02:21:56 +0000 (19:21 -0700)]
Use the query paradigm for resolving sdt probes

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

15 years agoRemove unused 'sess' from dwarf_query ctor
Josh Stone [Tue, 21 Jul 2009 21:35:25 +0000 (14:35 -0700)]
Remove unused 'sess' from dwarf_query ctor

15 years agoPR10421: Update task.stp for 2.6.31
Wenji Huang [Tue, 21 Jul 2009 20:24:10 +0000 (16:24 -0400)]
PR10421: Update task.stp for 2.6.31

* tapset/task.stp (pid2task): Use find_get_pid for 2.6.31.

15 years agoPR10182 systemtap.spec should try to clean up old leftover uprobes module.
Mark Wielaard [Tue, 21 Jul 2009 20:01:39 +0000 (22:01 +0200)]
PR10182 systemtap.spec should try to clean up old leftover uprobes module.

systemtap.spec (post,preun): Call rmmod uprobes.

15 years agoSave module when dwflpp setup_user.
Mark Wielaard [Tue, 21 Jul 2009 11:17:26 +0000 (13:17 +0200)]
Save module when dwflpp setup_user.

* dwflpp.cxx (setup_user): Set module to mod.

15 years agoPR10424: Consider each tracepoint header separately
Josh Stone [Tue, 21 Jul 2009 01:01:40 +0000 (18:01 -0700)]
PR10424: Consider each tracepoint header separately

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.

15 years agoMake sure that non-existent files still affect hashing
Josh Stone [Tue, 21 Jul 2009 00:57:56 +0000 (17:57 -0700)]
Make sure that non-existent files still affect hashing

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

15 years agoAllow dwflpp to take a vector of module names
Josh Stone [Mon, 20 Jul 2009 23:32:33 +0000 (16:32 -0700)]
Allow dwflpp to take a vector of module names

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.

15 years agoReturn hash module values directly as strings
Josh Stone [Mon, 20 Jul 2009 23:25:35 +0000 (16:25 -0700)]
Return hash module values directly as strings

* 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

15 years agoFixes for 2.6.31. There are some changes in sk_buff structure those cause
David J. Wilder [Mon, 20 Jul 2009 23:08:42 +0000 (16:08 -0700)]
Fixes for 2.6.31.  There are some changes in sk_buff structure those cause
failures of compiling ipmib.stp and tcpmib.stp, rtable and dst fields are
deleted.

15 years agoFixed PR 10386 by removing the need to convert a pid to a task.
David Smith [Mon, 20 Jul 2009 20:25:01 +0000 (15:25 -0500)]
Fixed PR 10386 by removing the need to convert a pid to a task.
* 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.

15 years ago* tapsets.cxx (dwarf_builder::probe_table::convert_probe):
Stan Cox [Mon, 20 Jul 2009 14:20:23 +0000 (10:20 -0400)]
* tapsets.cxx (dwarf_builder::probe_table::convert_probe):
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.

15 years agoTweak kernel or module resident probe
Wenji Huang [Mon, 20 Jul 2009 02:03:45 +0000 (22:03 -0400)]
Tweak kernel or module resident probe

* tapset/nfs_proc.stp: Change '?' notation to "!".
* tapset/nfsd.stp: Ditto.
* tapset/scsi.stp: Ditto.

15 years agominor typo
Don Domingo [Mon, 20 Jul 2009 03:16:47 +0000 (13:16 +1000)]
minor typo

15 years agorevising for brew build
Don Domingo [Mon, 20 Jul 2009 01:42:33 +0000 (11:42 +1000)]
revising for brew build

15 years agominor revisions to language
Don Domingo [Mon, 20 Jul 2009 00:59:30 +0000 (10:59 +1000)]
minor revisions to language

15 years agoPR6961: gcc warning tweak
Frank Ch. Eigler [Fri, 17 Jul 2009 22:52:04 +0000 (18:52 -0400)]
PR6961: gcc warning tweak

* sym.c (_stp_usymbol_print): Ditto.

15 years agoregenerate example indexes
Frank Ch. Eigler [Fri, 17 Jul 2009 22:05:25 +0000 (18:05 -0400)]
regenerate example indexes

15 years agoPR6961: gcc warning tweak
Frank Ch. Eigler [Fri, 17 Jul 2009 22:04:24 +0000 (18:04 -0400)]
PR6961: gcc warning tweak

* sym.c (_stp_symbol_print): (Redundantly) initialize locals.

15 years agoUpdate AUTHORS and .mailmap
Josh Stone [Fri, 17 Jul 2009 21:55:19 +0000 (14:55 -0700)]
Update AUTHORS and .mailmap

* AUTHORS: Add David J. Wilder and Jeff Moyer.
* .mailmap: Add a real name for <wjhuang@localhost.localdomain>

This page took 0.107371 seconds and 5 git commands to generate.