]> sourceware.org Git - systemtap.git/log
systemtap.git
14 years agoExtend skipped.exp test timeout for slower machines.
Mark Wielaard [Mon, 28 Dec 2009 19:47:59 +0000 (20:47 +0100)]
Extend skipped.exp test timeout for slower machines.

14 years agoFix test output for PR10849 make MAXSKIPPED overflow trigger an error message
Mark Wielaard [Mon, 28 Dec 2009 19:37:20 +0000 (20:37 +0100)]
Fix test output for PR10849 make MAXSKIPPED overflow trigger an error message

14 years agoDefine __GFP_MOVABLE GFP_ZONEMASK __GFP_NOTRACK in memory.stp if not there.
Mark Wielaard [Mon, 28 Dec 2009 11:07:06 +0000 (12:07 +0100)]
Define __GFP_MOVABLE GFP_ZONEMASK __GFP_NOTRACK in memory.stp if not there.

Older kernels might not have these defines available, so define them
if not yet there.

14 years agoXFAIL PR10732 declaration.exp empty-struct always fails.
Mark Wielaard [Mon, 28 Dec 2009 11:05:12 +0000 (12:05 +0100)]
XFAIL PR10732 declaration.exp empty-struct always fails.

14 years agoMerge remote branch 'origin/master'
Tim Moore [Wed, 23 Dec 2009 08:14:02 +0000 (09:14 +0100)]
Merge remote branch 'origin/master'

14 years agoppc stack: transcribe portions of modern kernel ppc/.../asm/ptrace.h
Frank Ch. Eigler [Tue, 22 Dec 2009 17:53:17 +0000 (12:53 -0500)]
ppc stack: transcribe portions of modern kernel ppc/.../asm/ptrace.h

* runtime/stack-ppc.c (__stp_stack_print): Define STACK_FRAME_LR_SAVE,
  STACK_FRAME_REGS_MARKER,STACK_FRAME_MARKER, etc.

14 years agosdt.h semaphore: use get_user / put_user instead of __access_process_vm.
Frank Ch. Eigler [Wed, 23 Dec 2009 02:53:39 +0000 (21:53 -0500)]
sdt.h semaphore: use get_user / put_user instead of __access_process_vm.

    * translate.cxx (translate_pass): Don't #include <access_blah.>
    * tapsets.cxx, tapset-utrace.cxx: Replace __access_process_vm()
      calls with get_user() / put_user() respectively.

14 years agographer: remove _zoomFactor from horizontal scaling calculation
Tim Moore [Tue, 22 Dec 2009 22:30:56 +0000 (23:30 +0100)]
grapher: remove _zoomFactor from horizontal scaling calculation

This makes zooming more consistent and less buggy.

* grapher/Graph.cxx (Graph::draw): Set graph time spread using
  _zoomFactor.
* grapher/Graph.hxx (Graph::getHorizontalScale): no _zoomFactor
* grapher/GraphWidget.cxx (on_motion_notify_event): Dragging increment
  uses _zoomFactor.
  (on_scroll_event): Set extents after changing the zoom factor with
  the scroll wheel.

14 years agographer: scale from right end of graph
Tim Moore [Tue, 22 Dec 2009 18:48:20 +0000 (19:48 +0100)]
grapher: scale from right end of graph

The right side of the graph represents the most recent time. Since
there is never anything interesting to the right of that, it makes
sense to have the origin of the scaling be there.

* grapher/Graph.hxx (getHorizontalScale): new function
* grapher/GraphStyle.cxx (GraphStyleBar::draw, GraphStyleDot::draw,
  GraphStyleEvent::draw): Use cairo transform functions to set up
  scaling.
  (GraphStyleBar::dataIndexAtPoint, GraphStyleEvent::dataIndexAtPoint):
  Base calculations on scaling from right.

14 years agographer: fix bug in looking up event under pointer
Tim Moore [Tue, 22 Dec 2009 14:06:17 +0000 (15:06 +0100)]
grapher: fix bug in looking up event under pointer

I don't why I thought this ever worked.

* grapher/GraphStyle.cxx (GraphStyleEvent::dataIndexAtPoint): return
  distance from beginning of buffer, not beginning of search bounds.

14 years agodon't assume buffer passed to pty_write is null terminated
Tim Moore [Tue, 22 Dec 2009 14:02:43 +0000 (15:02 +0100)]
don't assume buffer passed to pty_write is null terminated

* testsuite/systemtap.examples/general/grapher.stp: Use kernel_char
  instead of kernel_string to dig characters out of buffer.

14 years agographer: draw axes on multiples of the axis "major unit"
Tim Moore [Tue, 22 Dec 2009 11:00:41 +0000 (12:00 +0100)]
grapher: draw axes on multiples of the axis "major unit"

* grapher/Graph.cxx (Graph::draw): Make axis values end up on
  multiples of majorUnit.

14 years agographer: scroll continuously with time
Tim Moore [Tue, 22 Dec 2009 10:35:38 +0000 (11:35 +0100)]
grapher: scroll continuously with time

Don't scale graph based on how much data will fit. This didn't work
very well and resulted in distracting, weird scale changes. We now
assume that scripts output their time (x axis) in milliseconds.

* grapher/Graph.hxx (setCurrentTime): New function.
* grapher/Graph.cxx (Graph::draw): Assume a fixed default scale of 1
  pixel = 5 milliseconds and don't do any autoscaling.
* grapher/GraphWidget.cxx (GraphWidget constructor): Set global time
  base on startup.
  (on_expose_event): Don't search graphs for earliest time.
* grapher/GraphWidget.hxx (_timeBaseInitialized): delete
* grapher/Time.hxx: new file; interface to timeval.

14 years agoPR11015 Support shared library reloading (in different processes)
Mark Wielaard [Mon, 21 Dec 2009 12:02:19 +0000 (13:02 +0100)]
PR11015 Support shared library reloading (in different processes)

* runtime/task_finder_vma.c (stap_remove_vma_map_info): Return negative
  status on failure.
  (stap_find_vma_map_info): Likewise.
  (stap_find_vma_map_info_user): New function.
  (stap_drop_vma_maps): New function.
* runtime/sym.h (addr): Renamed to static_addr, to store addresses for
  sections which are always mapped at the same address.
  (_stp_module_relocate): Add extra struct task_struct *tsk argument.
* runtime/sym.c (_stp_tf_exec_cb): New callback, calls stap_drop_vma_maps.
  (_stp_tf_mmap_cb): Don't store address in module.section, but call
  stap_add_vma_map_info() per tsk->group_leader for matched module.
  Don't register empty/null modules.
  (_stp_module_relocate): Take extra struct task_struct *tsk argument,
  cache last tsk used. Only use section->static_addr for none dynamic
  modules. Use stap_find_vma_map_info_user() to locate dynamic modules.
  (_stp_mod_sec_lookup): Add extra argument unsigned long *rel_addr to
  optionally store relative address when module/section found.
  (_stp_kallsyms_lookup): Use _stp_mod_sec_lookup to find relative address.
  (_stp_sym_init): Register _stp_tf_exec_cb in stap_task_finder_target.
  Add error check to see if task finder could be initialized.
* dwflpp.cxx (emit_address): Pass NULL for kernel/modules and current for
  user tasks to _stp_module_relocate.
* runtime/transport/symbols.c (_stp_do_relocation): Set new static_addr
  _stp_section field.
* runtime/unwind.c (adjustStartLoc): Take new struct task_struct *tsk
  argument and pass to stap_find_vma_map_info_user and _stp_module_relocate
  to find adjusted addr.
  (_stp_search_unwind_hdr): Pass through struct task_struct *tsk.
  (unwind_frame): Likewise.
* tapset/context-symbols.stp (probemod): Add NULL to _stp_mod_sec_lookup
  call to indicate we aren't interested in relative address.
* tapsets.cxx (dwarf_derived_probe_group::emit_module_init): Pass NULL to
  _stp_module_relocate to indicate kernel/module address.

14 years agoTracepoint based tapset for memory subsystem.
Rajasekhar Duddu [Mon, 21 Dec 2009 11:40:54 +0000 (17:10 +0530)]
Tracepoint based tapset for memory subsystem.

14 years agoAUTHORS bump
Josh Stone [Tue, 22 Dec 2009 19:37:38 +0000 (11:37 -0800)]
AUTHORS bump

14 years agoFixed ia64 compile problem with runtime/stack-ia64.c.
David Smith [Tue, 22 Dec 2009 15:32:36 +0000 (09:32 -0600)]
Fixed ia64 compile problem with runtime/stack-ia64.c.

* runtime/stack-ia64.c (__stp_stack_print): Added new 'ri' parameter.

14 years agoUpdates to SCSI tapset scsi.stp and corresponding testcases
Andre Detsch [Tue, 22 Dec 2009 08:33:31 +0000 (14:03 +0530)]
Updates to SCSI tapset scsi.stp and corresponding testcases

14 years agoUpdate tapset related to struct inet_sock for 2.6.33
Wenji Huang [Tue, 22 Dec 2009 06:25:00 +0000 (14:25 +0800)]
Update tapset related to struct inet_sock for 2.6.33

* tapset/inet_sock.stp : Add prefix "inet_" to field.
* tapset/ip.stp : Ditto.
* tapset/tcp.stp : Ditto.
* tapset/tcpmib.stp : Ditto.

14 years agoTracepoint based tapset for memory - changes to NEWS and tapset/memory.stp that got...
Rajasekhar Duddu [Tue, 22 Dec 2009 06:40:24 +0000 (12:10 +0530)]
Tracepoint based tapset for memory - changes to NEWS and tapset/memory.stp that got left out in earlier commit 0c487e433fd6343e49b1e9dbc6492f38cfe26143.

14 years agoFixed compilation on f11.
David Smith [Tue, 22 Dec 2009 03:29:48 +0000 (21:29 -0600)]
Fixed compilation on f11.

* runtime/task_finder.c: Fixed last checkin.

14 years agoIncremented version number for release 1.1.
David Smith [Tue, 22 Dec 2009 03:10:25 +0000 (21:10 -0600)]
Incremented version number for release 1.1.

* NEWS: Set version number.
* configure.ac: Incremented version number.
* systemtap.spec: Incremented version number and added changelog entry.
* testsuite/configure.ac: Ditto.
* Makefile.in: Regenerated.
* aclocal.m4: Ditto.
* configure: Ditto.
* doc/Makefile.in: Ditto.
* doc/SystemTap_Tapset_Reference/Makefile.in: Ditto.
* grapher/Makefile.in: Ditto.
* testsuite/Makefile.in: Ditto.
* testsuite/aclocal.m4: Ditto.
* testsuite/configure: Ditto.

14 years agoPR11113 fix. Support new utrace API.
David Smith [Tue, 22 Dec 2009 03:04:36 +0000 (21:04 -0600)]
PR11113 fix.  Support new utrace API.

* tapset-utrace.cxx (utrace_derived_probe_group::emit_module_decls):
  Handles new utrace api.
* runtime/itrace.c (usr_itrace_report_signal): Ditto.
  (usr_itrace_report_clone): Ditto.
  (usr_itrace_report_death): Ditto.
* runtime/task_finder.c (__stp_utrace_task_finder_report_clone): Ditto.
  (__stp_utrace_task_finder_report_exec): Ditto.
  (__stap_utrace_task_finder_report_death): Ditto.
  (__stp_utrace_task_finder_target_death): Ditto.
  (__stp_utrace_task_finder_target_quiesce): Ditto.
  (__stp_utrace_task_finder_target_syscall_entry): Ditto.
  (__stp_utrace_task_finder_target_syscall_exit): Ditto.
* runtime/uprobes2/uprobes.c (uprobe_report_signal): Ditto.
  (uprobe_report_quiesce): Ditto.
  (uprobe_report_exit): Ditto.
  (uprobe_report_clone): Ditto.
  (uprobe_report_exec): Ditto.

14 years agoPR11112: Check the full %m/M buffer, and limit the length
Josh Stone [Tue, 22 Dec 2009 02:26:47 +0000 (18:26 -0800)]
PR11112: Check the full %m/M buffer, and limit the length

We already had code in place to try a deref on the requested memory
buffer, but it was missing the static-precision case.  Thus, it was
possible to craft an address that would pass the check on the first byte
but would pagefault at the end of the buffer.

While we're at it, we should also be limiting the number of bytes in
such a read, so even legitimately-huge buffers won't chew up kernel
time.  I've arbitrarily chosen 1024 as the limit, but we can revisit
that later. (see also PR10490)

TODO: we need a reliable testcase where a starting address is valid but
the end address is bogus.  In PR11112, the reproducer was using a huge
precision to run off the heap, but we need something that will
consistently work even with <1024 length.

14 years agoNEWS entry for client/server/cert tools reorg.
Dave Brolley [Tue, 22 Dec 2009 01:37:01 +0000 (20:37 -0500)]
NEWS entry for client/server/cert tools reorg.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
Dave Brolley [Tue, 22 Dec 2009 01:17:26 +0000 (20:17 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoTypo: @bindir -> @bindir@
Dave Brolley [Tue, 22 Dec 2009 00:42:57 +0000 (19:42 -0500)]
Typo: @bindir -> @bindir@

14 years agoPR 10905: initscript improvements.
Dave Brolley [Tue, 22 Dec 2009 00:26:16 +0000 (19:26 -0500)]
PR 10905: initscript improvements.

Make the stap-server initscript available as $bindir/stap-server
Reimplement the stap-server initscript as a thin wrapper around
$bindir/stap-server.

14 years agoCleanup in testsuite/system.apps
Stan Cox [Mon, 21 Dec 2009 22:23:03 +0000 (17:23 -0500)]
Cleanup in testsuite/system.apps

* mysql.exp (stap-mysql.sh): Shutdown properly.
* xulrunner.exp: Run depending on SYSTEMTAP_TESTAPPS env
(stap-xul.sh): Fix xulrelease.  Add mozjs-dtrace.o to js link line.

14 years agoPR11038 Trailing semicolon as null-statement confusing.
Mark Wielaard [Mon, 21 Dec 2009 21:37:20 +0000 (22:37 +0100)]
PR11038 Trailing semicolon as null-statement confusing.

* parse.cxx (parser::parse_statement): Squash semicolon after non-block-like
  statements.
* testsuite/buildok/semicolon.stp: New test.

14 years agoMake sure we log server activity when testing using a server.
Dave Brolley [Mon, 21 Dec 2009 20:40:55 +0000 (15:40 -0500)]
Make sure we log server activity when testing using a server.

14 years agoGet PATH correct for fidning libexec tools for installcheck.
Dave Brolley [Mon, 21 Dec 2009 18:46:10 +0000 (13:46 -0500)]
Get PATH correct for fidning libexec tools for installcheck.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
Dave Brolley [Mon, 21 Dec 2009 17:42:11 +0000 (12:42 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoLook for stap-start-server and stap-stop-server in libexec.
Dave Brolley [Mon, 21 Dec 2009 17:41:37 +0000 (12:41 -0500)]
Look for stap-start-server and stap-stop-server in libexec.

14 years agoTypos in install and rpm spec.
Dave Brolley [Mon, 21 Dec 2009 17:19:15 +0000 (12:19 -0500)]
Typos in install and rpm spec.

o add / suffix to stap_pkglibexecdir
o typo: %{name%} -> %{name}

14 years agoPR10601: cleanup for i386, x86-64
Frank Ch. Eigler [Mon, 21 Dec 2009 17:03:15 +0000 (12:03 -0500)]
PR10601: cleanup for i386, x86-64

* runtime/loc2c-runtime.h (usr_i386): Fix si/di ordering.  Add ip.
  (usr_x86_64): Add rip.
  (u_*_register): Use kernel standard ARRAY_SIZE() instead of S().

14 years agoMerge remote branch 'origin/master'
Tim Moore [Mon, 21 Dec 2009 16:53:06 +0000 (17:53 +0100)]
Merge remote branch 'origin/master'

14 years agoInstall %{libexecdir}/%{name}/stapio explicitely.
Dave Brolley [Mon, 21 Dec 2009 16:49:52 +0000 (11:49 -0500)]
Install %{libexecdir}/%{name}/stapio explicitely.

14 years agoDon't install the entire %{libexecdir}/%{name} directory.
Dave Brolley [Mon, 21 Dec 2009 16:41:45 +0000 (11:41 -0500)]
Don't install the entire %{libexecdir}/%{name} directory.

14 years agoPR 10247, 10276, 10905: Move remaining client/server tools to libexec.
Dave Brolley [Mon, 21 Dec 2009 16:26:05 +0000 (11:26 -0500)]
PR 10247, 10276, 10905: Move remaining client/server tools to libexec.

14 years agoPR11015 Support shared library reloading (in different processes)
Mark Wielaard [Mon, 21 Dec 2009 12:02:19 +0000 (13:02 +0100)]
PR11015 Support shared library reloading (in different processes)

* runtime/task_finder_vma.c (stap_remove_vma_map_info): Return negative
  status on failure.
  (stap_find_vma_map_info): Likewise.
  (stap_find_vma_map_info_user): New function.
  (stap_drop_vma_maps): New function.
* runtime/sym.h (addr): Renamed to static_addr, to store addresses for
  sections which are always mapped at the same address.
  (_stp_module_relocate): Add extra struct task_struct *tsk argument.
* runtime/sym.c (_stp_tf_exec_cb): New callback, calls stap_drop_vma_maps.
  (_stp_tf_mmap_cb): Don't store address in module.section, but call
  stap_add_vma_map_info() per tsk->group_leader for matched module.
  Don't register empty/null modules.
  (_stp_module_relocate): Take extra struct task_struct *tsk argument,
  cache last tsk used. Only use section->static_addr for none dynamic
  modules. Use stap_find_vma_map_info_user() to locate dynamic modules.
  (_stp_mod_sec_lookup): Add extra argument unsigned long *rel_addr to
  optionally store relative address when module/section found.
  (_stp_kallsyms_lookup): Use _stp_mod_sec_lookup to find relative address.
  (_stp_sym_init): Register _stp_tf_exec_cb in stap_task_finder_target.
  Add error check to see if task finder could be initialized.
* dwflpp.cxx (emit_address): Pass NULL for kernel/modules and current for
  user tasks to _stp_module_relocate.
* runtime/transport/symbols.c (_stp_do_relocation): Set new static_addr
  _stp_section field.
* runtime/unwind.c (adjustStartLoc): Take new struct task_struct *tsk
  argument and pass to stap_find_vma_map_info_user and _stp_module_relocate
  to find adjusted addr.
  (_stp_search_unwind_hdr): Pass through struct task_struct *tsk.
  (unwind_frame): Likewise.
* tapset/context-symbols.stp (probemod): Add NULL to _stp_mod_sec_lookup
  call to indicate we aren't interested in relative address.
* tapsets.cxx (dwarf_derived_probe_group::emit_module_init): Pass NULL to
  _stp_module_relocate to indicate kernel/module address.

14 years agoTracepoint based tapset for memory subsystem.
Rajasekhar Duddu [Mon, 21 Dec 2009 11:40:54 +0000 (17:10 +0530)]
Tracepoint based tapset for memory subsystem.

14 years agoconditionalize pty_write count variable on kernel version
Tim Moore [Mon, 21 Dec 2009 11:31:14 +0000 (12:31 +0100)]
conditionalize pty_write count variable on kernel version

* testsuite/systemtap.examples/general/grapher.stp: Conditionalize
  pty_write count variable on kernel version.

14 years agochange namespace indentation to 0
Tim Moore [Mon, 21 Dec 2009 09:46:57 +0000 (10:46 +0100)]
change namespace indentation to 0

A silly change, but this works better with other tools, like git
diff. I should have started the C++ files this way.

14 years agobrown paper bag typo fixy
Frank Ch. Eigler [Mon, 21 Dec 2009 03:49:00 +0000 (22:49 -0500)]
brown paper bag typo fixy

14 years agoruntime: more build fix for non-utrace kernels
Frank Ch. Eigler [Mon, 21 Dec 2009 03:28:50 +0000 (22:28 -0500)]
runtime: more build fix for non-utrace kernels

* runtime/stack-i386.c (_stp_stack_print): Make call to uprobe_get_pc()
  conditional on CONFIG_UTRACE.
* runtime/stack-x86_64.c: Ditto.

14 years agoPR10601: unfork deref()
Frank Ch. Eigler [Sun, 20 Dec 2009 21:54:27 +0000 (16:54 -0500)]
PR10601: unfork deref()

* runtime/loc2c-runtime.h: Remove k_ vs u_[store_]deref; share instead.
* tapsets.cxx: Remove k_ vs u_ redirection for *deref().

14 years agodocumentation: remove docs for nonexistentn perfctr probes
Frank Ch. Eigler [Sun, 20 Dec 2009 21:51:47 +0000 (16:51 -0500)]
documentation: remove docs for nonexistentn perfctr probes

14 years agoruntime: rhel4 build fix for uretprobe-wannabe stack tracebacks
Frank Ch. Eigler [Sun, 20 Dec 2009 20:43:53 +0000 (15:43 -0500)]
runtime: rhel4 build fix for uretprobe-wannabe stack tracebacks

* runtime/stack.c (_stp_stack_print): Comment out *retprobe logic if !CONFIG_UTRACE.

14 years agoRHBZ543529: Make implicit -BCONFIG_MODULE_SIG=n
Frank Ch. Eigler [Sun, 20 Dec 2009 20:34:09 +0000 (15:34 -0500)]
RHBZ543529: Make implicit -BCONFIG_MODULE_SIG=n

* buildrun.cxx (compile_pass): Disable module signing goo.

14 years agodwarf probes: skip inlined instances with null (buggy) entrypc
Frank Ch. Eigler [Sun, 20 Dec 2009 19:34:31 +0000 (14:34 -0500)]
dwarf probes: skip inlined instances with null (buggy) entrypc

* dwflpp.cxx (resolve_prologue_endings): Skip entrypc=0.

14 years agoruntime backtracing: port commit #2e7f8442 to uprobes1
Frank Ch. Eigler [Sun, 20 Dec 2009 18:34:16 +0000 (13:34 -0500)]
runtime backtracing: port commit #2e7f8442 to uprobes1

    * runtime/uprobes/uprobes.c (uprobe_get_pc): new function

14 years agoPR10601 cont'd, RHEL5 backward compatibility with more runtime/autoconf*
Frank Ch. Eigler [Sun, 20 Dec 2009 17:16:33 +0000 (12:16 -0500)]
PR10601 cont'd, RHEL5 backward compatibility with more runtime/autoconf*

14 years agoPR10601 part 1: i386 and x86-64 regset for dwarf fetch/store_register()s
Frank Ch. Eigler [Fri, 18 Dec 2009 17:20:52 +0000 (12:20 -0500)]
PR10601 part 1: i386 and x86-64 regset for dwarf fetch/store_register()s

* runtime/loc2c-runtime.h (fetch_register, store_register):
  forked into k_ (kernel) and u_ (user) varieties.  Implement
  i386 and x86_64 in terms of regset.h; fall back to k_* for
  other architectures.
* tapsets.cxx: (*::visit_target_symbol): Emit macros to map
  loc2c's fetch/store_register to loc2c-runtime's k_ or u_ as
  appopriate.

14 years agoPR10601: comment on loc2c's use of [u]intptr_t for temp values
Frank Ch. Eigler [Tue, 24 Nov 2009 20:46:41 +0000 (15:46 -0500)]
PR10601: comment on loc2c's use of [u]intptr_t for temp values

14 years agoRecalculate sem address when tid changes.
Stan Cox [Sat, 19 Dec 2009 17:18:00 +0000 (12:18 -0500)]
Recalculate sem address when tid changes.

* tapsets.cxx (uprobe_derived_probe_group::emit_module_decls): Emit
sdt_sem_tid.  Use it to recalculate sem address when task changes.

14 years agoRemove externalvar.exp .exe and .so after test done.
Mark Wielaard [Sat, 19 Dec 2009 11:36:48 +0000 (12:36 +0100)]
Remove externalvar.exp .exe and .so after test done.

14 years agoSome tools (temporarily) still in $bindir.
Dave Brolley [Fri, 18 Dec 2009 21:49:48 +0000 (16:49 -0500)]
Some tools (temporarily) still in $bindir.

14 years agos/pkglibexecdir/libexecdir/systemtap/
Dave Brolley [Fri, 18 Dec 2009 21:40:03 +0000 (16:40 -0500)]
s/pkglibexecdir/libexecdir/systemtap/

14 years agoPR 10247 10276 10905: Infrastructure for moving underlying client/server tools to...
Dave Brolley [Fri, 18 Dec 2009 21:22:01 +0000 (16:22 -0500)]
PR 10247 10276 10905: Infrastructure for moving underlying client/server tools to libexec.

14 years agoMerge commit 'origin/master'
Tim Moore [Fri, 18 Dec 2009 18:14:25 +0000 (19:14 +0100)]
Merge commit 'origin/master'

14 years agoRemove uprobes.h declaration from runtime.h
Tim Moore [Fri, 18 Dec 2009 16:56:24 +0000 (17:56 +0100)]
Remove uprobes.h declaration from runtime.h

Turns out that it breaks on kernels that don't have utrace.

* runtime/runtime.h : Don't include uprobes.h
* runtime/stack.c: Include uprobes.h
* runtime/stack-i386.c: Check if uprobes is included at all.
* runtime/stack-x86_64.c: ditto
* tapsets.cxx (uprobe_derived_probe_group::emit_module_decls): put
  uprobes.h include back in.

14 years agoPR 10641: Do not allow -m when --unprivileged in the server.
Dave Brolley [Fri, 18 Dec 2009 17:16:33 +0000 (12:16 -0500)]
PR 10641: Do not allow -m when --unprivileged in the server.

14 years agoFix typos in NEWS
Wenji Huang [Fri, 18 Dec 2009 08:50:03 +0000 (16:50 +0800)]
Fix typos in NEWS

14 years agoRemove blank line in ucontext-unwind.stp for SystemTap Tapset Reference Manual
William Cohen [Thu, 17 Dec 2009 22:51:16 +0000 (17:51 -0500)]
Remove blank line in ucontext-unwind.stp for SystemTap Tapset Reference Manual

The automatic documentation extraction doesn't allow blank lines between the
the comment and the actual code. Removed the problem blank line to allow
the information to be extracted for the SystemTap Tapset Reference Manual.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
William Cohen [Thu, 17 Dec 2009 22:39:30 +0000 (17:39 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoAdd PROD2 to allow beginner's guide to be built again.
William Cohen [Thu, 17 Dec 2009 22:24:52 +0000 (17:24 -0500)]
Add PROD2 to allow beginner's guide to be built again.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
Dave Brolley [Thu, 17 Dec 2009 22:15:47 +0000 (17:15 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoAdd function to generate saner html file names for langref.
William Cohen [Thu, 17 Dec 2009 22:15:02 +0000 (17:15 -0500)]
Add function to generate saner html file names for langref.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
Dave Brolley [Thu, 17 Dec 2009 21:59:26 +0000 (16:59 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoCorrect path to trusted signer's database.
Dave Brolley [Thu, 17 Dec 2009 21:58:33 +0000 (16:58 -0500)]
Correct path to trusted signer's database.

14 years agoPR 10889: Reorganize client/server man pages. Document --unprivileged.
Dave Brolley [Thu, 17 Dec 2009 21:30:02 +0000 (16:30 -0500)]
PR 10889: Reorganize client/server man pages. Document --unprivileged.

14 years agoMerge commit 'origin/master'
Tim Moore [Thu, 17 Dec 2009 16:38:24 +0000 (17:38 +0100)]
Merge commit 'origin/master'

14 years agosupport for a brief backtrace format
Tim Moore [Thu, 17 Dec 2009 15:18:34 +0000 (16:18 +0100)]
support for a brief backtrace format

This only prints symbol+offset, or an address if the symbol isn't
known.

* runtime/runtime.h (SYM_VERBOSE_NO, SYM_VERBOSE_FULL,
  SYM_VERBOSE_BRIEF): new constants
* runtime/stack.c (_stp_stack_print): support brief format
* runtime/sym.c (_stp_func_print): ditto
* tapset/ucontext-unwind.stp (print_ubacktrace_brief): new function
* testsuite/systemtap.context/fib.c: new test program
* testsuite/systemtap.context/fib.stp: new test
* testsuite/systemtap.context/fib.exp: new test

14 years agobacktrace through uprobes trampoline.
Tim Moore [Wed, 16 Dec 2009 17:04:34 +0000 (18:04 +0100)]
backtrace through uprobes trampoline.

Only works in uretprobes for the moment.

* runtime/stack-x86_64.c (__stp_stack_print): Rewrite trampoline PC
  addresses if necessary.
* runtime/stack-i386.c (__stp_stack_print): ditto
* runtime/stack-arm.c (__stp_stack_print): Add extra argument
* runtime/stack-ppc.c (__stp_stack_print): ditto
* runtime/stack-s390.c (__stp_stack_print): ditto
* runtime/stack.c (_stap_stack_print): call __stp_stack_print with
  uretprobe_instance.
* testsuite/systemtap.context/uprobe_backtrace.stp: new test

14 years agoPR 11097 fixed by correcting MAXNESTING test.
David Smith [Wed, 16 Dec 2009 18:05:55 +0000 (12:05 -0600)]
PR 11097 fixed by correcting MAXNESTING test.

* translate.cxx (emit_function): Fixed MAXNESTING test to not allow too
  deep recursion.

14 years agofunction to translate from the uretprobe trampoline back to the original
Tim Moore [Wed, 16 Dec 2009 17:00:34 +0000 (18:00 +0100)]
function to translate from the uretprobe trampoline back to the original
return address

* runtime/uprobes2/uprobes.c (uprobe_get_pc): new function

14 years agoset the IP in return probes to the returned-to instruction
Tim Moore [Wed, 16 Dec 2009 11:00:55 +0000 (12:00 +0100)]
set the IP in return probes to the returned-to instruction

It's easily available in kretprobes and uretprobes and is consistent
with the rest of the program state.

* translate.cxx (emit_common_header) : add uretprobe_instance to context.
* tapsets.cxx (common_probe_entryfn_prologue): Initialize ri in
  context to 0.
  (dwarf_derived_probe_group::emit_module_decls): Change IP to return
  address in kretprobes.
  (uprobe_derived_probe_group::emit_module_decls): enter_uretprobe_probe:
  set ri (uretprobe_instance) in context. Change IP to return
  address in uretprobes. Don't emit uprobe include and #define
* runtime/runtime.h : Add includes and #define for uprobes.
* runtime/stack.c (_stp_stack_print, _stp_stack_snprint): Add extra
  argument for uretprobe_instance.
* tapset/context-unwind.stp (print_backtrace, backtrace): Pass NULL
  for uretprobe_instance to _stp_stack_print.
* tapset/ucontext-unwind.stp (print_ubacktrace, ubacktrace): pass
  uretprobe_instance to _stp_stack_print
* testsuite/systemtap.context/uprobe_uaddr.exp : new test for uaddr in
  function probes
* testsuite/systemtap.context/uprobe_uaddr.stp : new file

14 years agoFix handling of multiple sdt uprobes with the same name.
Stan Cox [Wed, 16 Dec 2009 03:10:13 +0000 (22:10 -0500)]
Fix handling of multiple sdt uprobes with the same name.

tapsets.cxx (sdt_query::handle_query_module): Improve trace handling.
 (sdt_query::convert_location): Create new component instead of reusing old.

14 years agoRemove unused variable.
Dave Brolley [Tue, 15 Dec 2009 20:13:13 +0000 (15:13 -0500)]
Remove unused variable.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
Dave Brolley [Tue, 15 Dec 2009 19:34:13 +0000 (14:34 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoFixed DEBUG_MEM debug memory tracking.
David Smith [Tue, 15 Dec 2009 19:33:15 +0000 (13:33 -0600)]
Fixed DEBUG_MEM debug memory tracking.

* runtime/alloc.c (_stp_kmalloc): Fixed compilation when DEBUG_MEM is
  defined.  Improved allocated memory tracking.
  (_stp_kzalloc): Ditto.
  (_stp_vmalloc): Ditto.
  (_stp_alloc_percpu): Ditto.
  (_stp_kmalloc_node): Ditto.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
Dave Brolley [Tue, 15 Dec 2009 16:13:57 +0000 (11:13 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoDon't automatically authorize new root certificates as trusted signers.
Dave Brolley [Tue, 15 Dec 2009 16:13:13 +0000 (11:13 -0500)]
Don't automatically authorize new root certificates as trusted signers.

14 years agoDon't save build-id if it is located before _stext
Eugeniy Meshcheryakov [Tue, 15 Dec 2009 13:17:51 +0000 (14:17 +0100)]
Don't save build-id if it is located before _stext

This probably means that build-id will not be loaded at all and
happens for example with ARM kernel.

See also: http://sources.redhat.com/ml/systemtap/2009-q4/msg00574.html

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
Dave Brolley [Mon, 14 Dec 2009 21:39:01 +0000 (16:39 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoSuppress output from stap-gen-cert when installing the systemtap-server package.
Dave Brolley [Mon, 14 Dec 2009 21:37:53 +0000 (16:37 -0500)]
Suppress output from stap-gen-cert when installing the systemtap-server package.

14 years agoPR 10905: Initscript improvements: Automatically authorize the initscript servers...
Dave Brolley [Mon, 14 Dec 2009 21:12:56 +0000 (16:12 -0500)]
PR 10905: Initscript improvements: Automatically authorize the initscript servers as trusted servers and signers.

14 years agoClean up NSS after errors occur during verification.
Dave Brolley [Mon, 14 Dec 2009 20:40:10 +0000 (15:40 -0500)]
Clean up NSS after errors occur during verification.

14 years agoPR 10905: stap-server initscript improvements
Dave Brolley [Mon, 14 Dec 2009 18:08:45 +0000 (13:08 -0500)]
PR 10905: stap-server initscript improvements

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.

14 years agoDo not use condition_codes() on arm
Eugeniy Meshcheryakov [Fri, 11 Dec 2009 23:56:36 +0000 (00:56 +0100)]
Do not use condition_codes() on arm

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.

14 years agoUse env(SYSTEMTAP_TESTAPPS) for all systemtap.apps
Stan Cox [Fri, 11 Dec 2009 21:59:55 +0000 (16:59 -0500)]
Use env(SYSTEMTAP_TESTAPPS) for all systemtap.apps

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.

14 years agoruntime build: fix alloc.c buildability on old gcc 3.4
Frank Ch. Eigler [Fri, 11 Dec 2009 17:18:31 +0000 (12:18 -0500)]
runtime build: fix alloc.c buildability on old gcc 3.4

* runtime/alloc.c (_stp_kmalloc): Move var decl back to top.

14 years agographer: implement restarting a stap process
Tim Moore [Fri, 11 Dec 2009 13:03:47 +0000 (14:03 +0100)]
grapher: implement restarting a stap process

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

14 years agoruntime: undefine DEBUG_MEM, retain alloc counting
Frank Ch. Eigler [Thu, 10 Dec 2009 22:52:56 +0000 (17:52 -0500)]
runtime: undefine DEBUG_MEM, retain alloc counting

DEBUG_MEM can & does evoke locking timeouts.

* runtime/alloc.c (*): Track __stp_allocated_memory regardless
  of DEBUG_MEM.

14 years agoruntime: print stp_alloc statistics in startup printk
Frank Ch. Eigler [Thu, 10 Dec 2009 22:01:10 +0000 (17:01 -0500)]
runtime: print stp_alloc statistics in startup printk

* runtime/alloc.c: Define DEBUG_MEM.
* runtime/print.c (_stp_print_kernel_info): Reformat/rescale mem values.

14 years agoMerge commit 'origin/master'
Tim Moore [Thu, 10 Dec 2009 20:36:43 +0000 (21:36 +0100)]
Merge commit 'origin/master'

14 years agographer: integrate graph events from stdin with the stap process framework.
Tim Moore [Thu, 10 Dec 2009 20:34:27 +0000 (21:34 +0100)]
grapher: integrate graph events from stdin with the stap process framework.

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.

14 years agographer: more implementation stap process window
Tim Moore [Thu, 10 Dec 2009 14:11:08 +0000 (15:11 +0100)]
grapher: more implementation stap process window

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.

14 years agographer: change SIGCHLD handling and exit cleanup
Tim Moore [Thu, 10 Dec 2009 12:13:30 +0000 (13:13 +0100)]
grapher: change SIGCHLD handling and exit cleanup

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.

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