| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-04-20 David Smith <dsmith@redhat.com>
* runtime/syscall.h (syscall_get_nr): Uses upstream version of
syscall_get_nr() for ia64.
(syscall_get_arguments): Ditto.
(in_syscall): New ia64-only function from upstream.
(syscall_get_set_args_cb): Ditto.
(ia64_syscall_get_set_arguments): Ditto.
* runtime/task_finder.c (stap_register_task_finder_target):
Removed ia64 register cache.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-04-09 David Smith <dsmith@redhat.com>
* buildrun.cxx (compile_pass): Compile autoconf test for
<asm/syscall.h>.
* runtime/autoconf-asm-syscall.c: New "autoconf" test the presence
of <asm/syscall.h>.
* runtime/syscall.h: If <asm/syscall.h> exists, use it.
Otherwise, use our private copy of the functions for each
architecture.
(syscall_get_nr): Renamed from __stp_user_syscall_nr().
(syscall_get_return_value): Renamed from
__stp_user_syscall_return_value().
(syscall_get_arguments): Renamed from __stp_user_syscall_arg().
* runtime/task_finder.c
(__stp_utrace_task_finder_target_syscall_exit): Uses new syscall.h
functions.
* tapset/utrace.stp: Ditto.
|
|
|
|
|
| |
* runtime/task_finder.c (stap_register_task_finder_target): Also check both
pathlen are zero.
|
|
|
|
|
|
|
|
| |
* runtime/runtime.h: Include task_finder.c.
* runtime/sym.c: Always define task_finder callbacks for usage in tapsets.
* runtime/task_finder.c: Define dummy stap_task_finder_target when
! defined(CONFIG_UTRACE).
* tapsets.cxx: Never include task_finder.c directly.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-04-07 David Smith <dsmith@redhat.com>
PR 9940.
* tapsets.cxx (emit_vma_callback_probe_decl): Initialized new
callbacks.
(utrace_derived_probe_group::emit_probe_decl): Ditto.
(uprobe_derived_probe_group::emit_module_decls): Uses new
callback. Makes sure mapping is executable before trying to set a
probe in it.
(itrace_derived_probe_group::emit_module_init): Calls
_stp_sym_init().
(utrace_derived_probe_group::emit_module_init): Ditto.
(uprobe_derived_probe_group::emit_module_init): Ditto.
* runtime/sym.c: Moved task_finder_vma.c inclusion here from
task_finder.c.
(_stp_sym_init): New function.
(_stp_tf_mmap_cb): New function that replaces _stp_tf_vm_cb.
(_stp_tf_munmap_cb): Ditto.
* runtime/task_finder.c: Removed task_finder_vma.c inclusion.
Split vm_callback into 3 callbacks: mmap_callback,
munmap_callback, and mprotect_callback.
(stap_register_task_finder_target): Initializes new events
variables for the new callbacks.
(__STP_TASK_VM_BASE_EVENTS): No longer specifies syscall entry
events.
(__stp_call_mmap_callbacks): New function.
(__stp_call_mmap_callbacks_with_vma): Ditto.
(__stp_call_munmap_callbacks): Ditto.
(__stp_call_mprotect_callbacks): Ditto.
(__stp_call_vm_callbacks): Removed.
(__stp_utrace_task_finder_target_quiesce): Calls
__stp_call_mmap_callbacks() instead of __stp_call_vm_callbacks().
(__stp_utrace_task_finder_target_syscall_entry): Removed
function.
(__stp_utrace_task_finder_target_syscall_exit): Reports raw
mmap()/mprotect()/munmap() events.
|
|
|
|
|
|
|
| |
* runtime/task-finder.c: If ! defined (CONFIG_UTRACE) define dummy noop
API for sym.c consisting of struct stap_task_finder_target,
stap_add_vma_map_info, stap_remove_vma_map_info and
stap_find_vma_map_info.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fix caused a regression on fedora.
stap -ve 'probe process("/bin/ls").function("main") { log(pp()); }
probe process("/lib64/libc.so.6").function("*") { log(pp()); }' \
-c /bin/ls
hung (with stapio & ls processes spinning) upon startup.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2009-03-24 David Smith <dsmith@redhat.com>
PR 9989.
* runtime/task_finder.c (stap_utrace_detach): Ignores
-EINPROGRESS.
(stap_utrace_detach_ops): Ignores errors from
stap_utrace_detach(), so that other tasks will get detached from
this utrace engine.
(__stp_utrace_attach): Better error handling from
utrace_barrier().
(__stp_utrace_task_finder_target_quiesce): Ditto.
|
|\| |
|
| |
| |
| |
| |
| |
| | |
Adjusted all headers that #include <linux/utrace.h> to follow with:
/* PR9974: Adapt to struct renaming. */
|
|\| |
|
| |
| |
| |
| |
| |
| |
| | |
Add map_p argument to __stp_call_vm_callbacks_with_vma to well
tune the vma callback.
Signed-off-by: Wenji Huang <wenji.huang@oracle.com>
|
|/
|
|
|
|
| |
* runtime/task_finder.c (__stp_tf_vm_cb): Removed.
* tapsets.cxx (utrace_derived_probe_group::emit_module_decls):
Output task finder vma callback and hook it.
|
|
|
|
|
|
|
|
|
| |
When given directly by the user through -d or in case of the kernel
name and path might differ. path should be used for matching.
* runtime/sym.h (_stp_module): Add path field.
* runtime/task_finder.c (__stp_tf_vm_cb): Use module path to compare vm_path.
* translate.cxx (dump_unwindsyms): Output canonical path.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tapsets.cxx (utrace_derived_probe_group::emit_module_decls):
Always emit vm callback probe for __stp_tf_vm_cb.
* runtime/task_finder.c (__stp_tf_vm_cb): Always expose, move _stp_dbug
statements under ifdef DEBUG_TASK_FINDER_VMA. Find and record
corresponding module when vm_path not NULL.
* runtime/task_finder_vma.c (struct __stp_tf_vma_entry): Add _stp_module.
(stap_add_vma_map_info): Add _stp_module argument and assign.
(__stp_tf_get_vma_entry_addr): New static function to get
the __stp_tf_vma_entry given an address.
|
|
|
|
|
|
|
| |
2009-02-11 David Smith <dsmith@redhat.com>
* task_finder.c (__stp_utrace_attach): Still checks for mm after
checking task's flags for PF_KTHREAD.
|
|
|
|
|
|
|
| |
2009-02-10 David Smith <dsmith@redhat.com>
* task_finder.c (stap_utrace_detach_ops): Fixed typo.
(__stp_utrace_attach): Ditto.
|
|
|
|
|
|
|
|
|
| |
2009-02-10 David Smith <dsmith@redhat.com>
* task_finder.c (stap_utrace_detach): Ignores kernel threads by
checking task's flags for PF_KTHREAD.
(stap_utrace_detach_ops): Ditto.
(__stp_utrace_attach): Ditto.
|
|
|
|
|
|
|
|
|
|
| |
This change just inserts 'static' on runtime, tapset, and generated C
functions and globals, so the compiler can do a better job of
optimizing.
My tests with small scripts show ~10% reduction in compile time and ~20%
reduction in module size. Larger scripts may show less benefit, but I
expect purely positive results.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-20 David Smith <dsmith@redhat.com>
PR 9673.
* task_finder.c (struct stap_task_finder_target): Added
'vm_events' field.
(stap_register_task_finder_target): Sets vm_events if a
vm_callback is present.
(__stp_task_finder_cleanup): Only detaches engines on the main
__stp_task_finder_list linked list.
(__stp_call_callbacks): New function.
(__stp_call_vm_callbacks): New function.
(__stp_utrace_attach_match_filename): Calls __stp_call_callbacks()
to call callbacks.
(__stp_utrace_task_finder_target_death): Ditto.
(__stp_utrace_task_finder_target_quiesce): Calls
__stp_call_callbacks() and __stp_call_vm_callbacks() to call
callbacks.
(__stp_call_vm_callbacks_with_vma): Renamed from
__stp_target_call_vm_callback.
(__stp_utrace_task_finder_target_syscall_exit): Calls
__stp_call_vm_callbacks() to call vm callbacks.
(stap_start_task_finder): Instead of a utrace engine for every
task_finder_target, there is now one utrace engine for all targets
with the same path or pid.
|
|
|
|
| |
shlibs
|
|
|
|
|
|
|
| |
2008-09-26 David Smith <dsmith@redhat.com>
* task_finder.c (__STP_ATTACHED_TASK_EVENTS): Removed UTRACE_STOP,
which isn't needed anymore.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-09-25 David Smith <dsmith@redhat.com>
* task_finder.c (__stp_utrace_attach): Added action flag to know
to request the thread to be stopped or not.
(stap_utrace_attach): Now just calls __stp_utrace_attach().
(__stp_utrace_task_finder_target_quiesce): Handles
utrace_set_events() errors properly.
* utrace_compatibility.h (enum utrace_resume_action): Added
utrace_resume_action enum.
(utrace_control): Added UTRACE_STOP support.
(utrace_engine_put): New.
(utrace_barrier): New.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-09-12 David Smith <dsmith@redhat.com>
BZ 6755
* task_finder.c: Added 'inuse' count to know when handlers are still
running.
(__stp_utrace_task_finder_report_clone): If state isn't correct,
detach. Increase 'inuse' count when starting, decrement when
exiting.
(__stp_utrace_task_finder_report_exec): Ditto.
(__stp_utrace_task_finder_target_death): Ditto.
(__stp_utrace_task_finder_target_quiesce): Increase 'inuse' count
when starting, decrement when exiting.
(__stp_utrace_task_finder_target_syscall_entry): Ditto.
(__stp_utrace_task_finder_target_syscall_exit): Ditto.
(stap_stop_task_finder): Wait until all callbacks are finished.
|
| |
|
|
|
|
| |
control
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* commit 'origin/master':
Fix memory access error in nfs.proc.read_setup, nfs.proc.write_setup and nfs.proc.commit_setup
Update NEWS regarding the systemtap client/server.
New man page for the systemtap client/server and related utilities.
Repopulate symbol/type info.
Pushed quiesce logic down into the task_finder layer.
Added bug 6841 fix utrace syscall test.
PR6731: improve listing mode to list variables
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2008-08-29 David Smith <dsmith@redhat.com>
* tapsets.cxx (utrace_derived_probe_group::emit_probe_decl):
Pushed quiesce logic down into the task_finder layer.
(utrace_derived_probe_group::emit_module_decls): Removed quiesce
handler routines. Syscall probe handler detaches if systemtap
state isn't correct.
2008-08-29 David Smith <dsmith@redhat.com>
* task_finder.c (__stp_utrace_attach_match_filename): Don't call
the callback when the interesting thread is found, call it when
the tread is quiesced.
(stap_start_task_finder): Ditto.
(__stp_utrace_task_finder_target_quiesce): Call the callback.
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* commit 'origin/master':
PR5686: correct regression in semok/optimize.stp
trailing whitespace removal, as approved by emacs
fix global-var array index rendering
fix NEWS to refer to simpler context.stp tapset functions in auto-printing blurb
Document written but unread global variable automatic display.
2nd try
initial
Make _get_sock_addr return correct address in kernel before 2.6.16.
Automatically print written but unread globals
Make nodwf test passed when CONFIG_QUOTACTL unset
Uses STAPCONF_DPATH_PATH instead of a kernel version check.
Simplified "rpm" target a bit.
Moved tar archive creation step from "rpm" target to "dist-gzip" target.
remove support for "make dist" since git-archive does as well;
Examples html files moved into subdir.
2008-08-25 David Smith <dsmith@redhat.com>
ChangeLog Entries
Robustness improvements for the stap client/server
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2008-08-26 David Smith <dsmith@redhat.com>
* buildrun.cxx (compile_pass): Added autoconf-dpath-path.c.
2008-08-26 David Smith <dsmith@redhat.com>
* autoconf-d_path-path.c: New file.
* task_finder.c (__stp_get_mm_path): Uses STAPCONF_DPATH_PATH
instead of a kernel version check to determine how to call
d_path().
(__stp_utrace_task_finder_target_quiesce): Ditto.
(__stp_target_call_vm_callback): Ditto.
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* commit 'origin/master':
Added task finder target parameter to vm_callback functions.
Supports original and new utrace interfaces.
Add ChangeLog entries
stap client/server now pass 'make installcheck'
Looks for both mmap and mmap2.
PR 6841 fix.
Add missing 'process' bindings.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2008-08-21 David Smith <dsmith@redhat.com>
* tapsets.cxx (itrace_derived_probe_group::emit_module_decls):
Updated task finder callback function signature.
(utrace_derived_probe_group::emit_module_decls): Ditto.
2008-08-21 David Smith <dsmith@redhat.com>
* task_finder.c (__stp_tf_vm_cb): Added task finder target
parameter.
(__stp_utrace_attach_match_filename): Updated task finder callback
call.
(__stp_utrace_task_finder_target_death): Ditto.
(__stp_utrace_task_finder_target_quiesce): Ditto.
(__stp_target_call_vm_callback): Ditto.
(__stp_utrace_task_finder_target_syscall_exit): Ditto.
(stap_start_task_finder): Ditto.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2008-08-20 David Smith <dsmith@redhat.com>
* tapsets.cxx (utrace_derived_probe_group::emit_probe_decl):
Supports original and new utrace interfaces.
(utrace_derived_probe_group::emit_module_decls): Ditto.
2008-08-20 David Smith <dsmith@redhat.com>
* task_finder.c: Supports original and new utrace interfaces.
* utrace_compatibility.h (utrace_attach_task): Compatibility layer
for original utrace interface.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2008-08-20 David Smith <dsmith@redhat.com>
* task_finder.c (__stp_utrace_task_finder_target_syscall_entry):
Handles mmap2 (as well as mmap).
(__stp_utrace_task_finder_target_syscall_exit): Ditto.
* syscall.h: Added defines for mmap and mmap2.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2008-08-19 David Smith <dsmith@redhat.com>
PR 6841
* tapsets.cxx (utrace_derived_probe_group::emit_probe_decl):
Workaround utrace bug by quiescing threads before attaching a
utrace syscall engine to them.
(utrace_derived_probe_group::emit_module_decls): Emit quiesce
handler.
2008-08-19 David Smith <dsmith@redhat.com>
PR 6841
* task_finder.c (__stp_utrace_task_finder_target_quiesce):
Quiesces thread before turning on syscall tracing.
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* commit 'origin/master':
Mention distro specific elfutils development sub-packages needed when not found.
Change system-wide probes from 'process("*").begin' to 'process.begin'.
PR6836: tweak $$return formatting
extend callgraph example to use $$parms / $$return
PR6836: $$vars extensions, $$return
small patch ...
PR 6834
PR6842: work around possibly null task->signal in utrace death callback
Minor bugs in stap-client.
build compatibility and speed hack for bundled-elfutils mode
revise build instructions; clarifying elfutils bundling and its new hosting site
kbuild compatibility hack for separate-objdir O= builds
PR 6445 (partial). Implemented system-wide utrace probes.
Fixed compilation warning on gcc 3.x
let $$vars work even with unsupported c types (e.g., funkytown floats)
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2008-08-12 David Smith <dsmith@redhat.com>
PR 6445 (partial)
* tapsets.cxx (utrace_builder::build): Validates pid and allows
probing of "*" to mean all threads.
* stapprobes.5.in: Added note about a process path of "*" means to
probe all threads.
2008-08-12 David Smith <dsmith@redhat.com>
PR 6445 (partial)
* task_finder.c (stap_register_task_finder_target): Handles
probing all threads.
(__stp_utrace_attach_match_filename): Ditto.
(stap_start_task_finder): Ditto.
2008-08-12 David Smith <dsmith@redhat.com>
PR 6445 (partial)
* systemtap.base/utrace_p4.exp: Added test that probes all threads.
* semko/utrace14.stp: New test.
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* commit 'origin/master': (34 commits)
PR5049: fix overbroad effects of naive "*" prefixing; instead use optional "*/" only.
stap-serverd was incorectly determining that the server could
stapprobes man page: clarify statement(NUM).absolute and process("path") searching
PR5049: prefix with "*" any filenames given in "fn@filename:line" probes
Indentation fix.
Redirect stderr gets redircted so warnings don't let example script run fail.
PR6835. io/io_submit.stp: Fix #! start. Convert to normal line-ending.
PR2895. Add proper #! /usr/bin/env stap line. Make example scripts executable.
Use INSTALL_PROGRAM, not INSTALL_DATA for executable .stp scripts.
example index: only warn if old, do not regenerate
Start/stop the systemtap server from systemtap.exp and not in the top level Makefile.
Lower statement wildcard test matching threshold.
Moved details of utrace detach to stap_utrace_detach().
Saves thread vma information.
Always generate examples indexes and install examples from srcdir.
Refer to srcdir spec file Makefile so make rpm works when builddir != srcdir.
Add index of subsystem and keywords at top of HTML indexes.
Don't output output, exits, status line in indexes (mentioned in descriptions).
Disable chmodding of samples/kmalloc-top in spec file since it isn't installed.
Make sure examples indexes are always generated in builddir.
...
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2008-08-08 David Smith <dsmith@redhat.com>
* tapsets.cxx (utrace_derived_probe_group::emit_module_decls):
Calls stap_utrace_detach() to perform detach.
2008-08-08 David Smith <dsmith@redhat.com>
* task_finder.c (stap_utrace_detach): New function.
(stap_utrace_detach_ops): Calls stap_utrace_detach().
(__stp_utrace_attach_match_filename): Ditto.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2008-08-08 David Smith <dsmith@redhat.com>
* task_finder.c (__stp_tf_vm_cb): Added calls to save/delete vma
information.
* task_finder_vma.c (__stp_tf_vma_map_hash): New function.
(__stp_tf_get_vma_map_entry_internal): Ditto.
(stap_add_vma_map_info): Ditto.
(stap_remove_vma_map_info): Ditto.
(stap_find_vma_map_info): Ditto.
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-07-21 David Smith <dsmith@redhat.com>
* task_finder_vma.c (__stp_tf_vma_initialize): New function to
initialize the free list.
(__stp_tf_vma_put_free_entry): Puts a vma entry back on the free
list.
(__stp_tf_add_vma): Instead of allocating a vma entry, grab one
from the free list by calling __stp_tf_vma_put_free_entry().
(__stp_tf_remove_vma_entry): Instead of freeing a vma entry, call
__stp_tf_vma_put_free_entry() to put it on the free list instead.
* task_finder.c (stap_start_task_finder): Calls
__stp_tf_vma_initialize().
|
| |
|
|
|
|
|
|
|
|
|
| |
2008-07-01 David Smith <dsmith@redhat.com>
* task_finder.c (__stp_get_mm_path): Corrected error return code.
(__stp_utrace_attach_match_tsk): Ignores ENOENT error from
__stp_get_mm_path().
(stap_start_task_finder): Ditto.
|
|
|
|
|
|
|
|
|
|
| |
2008-06-30 David Smith <dsmith@redhat.com>
* task_finder.c (stap_utrace_detach_ops): Removed check to see if
thread has a mm (in the case where a thread isn't quite dead
yet).
(stap_utrace_attach): Minor error handling improvement.
(__stp_utrace_attach_match_tsk): Ditto.
|
|
|
|
|
|
|
|
|
| |
2008-06-23 David Smith <dsmith@redhat.com>
* task_finder.c (__stp_utrace_task_finder_target_quiesce): Fixed
vm_callback offset by shifting it left PAGE_SHIFT bits.
(__stp_target_call_vm_callback): Ditto.
(__stp_utrace_task_finder_target_syscall_exit): Ditto.
|
|
|
|
|
|
|
| |
2008-06-23 David Smith <dsmith@redhat.com>
* task_finder.c (__stp_utrace_task_finder_report_exec): Handles
relative exec paths correctly.
|