| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* stack.c: Reorganize and split arch-specific functions to
separate files.
(_stp_kta): Better checking.
(_stp_stack_sprint): Better handling of return probes.
* stack-i386.c: New file. Uses 2.6.18 DWARF unwinder if available.
* stack-x86_64.c: New file. Uses 2.6.18 DWARF unwinder if available.
* stack-ppc64.c: New file.
* stack-ia64.c: New file.
* sym.c (_stp_kallsyms_lookup_name): New function. Like
kallsyms_lookup_name() except use our internal lookup table.
|
|
|
|
|
|
|
|
|
|
|
| |
bugfix to avoid refer to NULL pointer
* hookid_defs.stp, ioscheduler.stp, register_event.stp:
break the old addevent.ioscheduler.elv_next_request into
addevent.ioscheduler.elv_next_request.entry and
addevent.ioscheduler.elv_next_request.return.
Now log_ioscheduler_tracedata_* will use the
variables defined in generic ioscheduler tapset
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tapsets.cxx (in_kprobes_function): New function that looks up
the values of '__kprobes_text_start' and '__kprobes_text_end' in
the kernel to be able to automatically exclude functions marked as
'__kprobes' (BZ# 2639).
(blacklisted_p): Calls in_kprobes_function().
(query_kernel_module): Utility function that finds the kernel module.
* session.h (struct systemtap_session): Added kprobes_text
variables - kprobes_text_initialized, kprobes_text_start, and
kprobes_text_end.
* elaborate.cxx (systemtap_session::systemtap_session):
kprobes_text variables get initialized.
|
|
|
|
| |
make sys_request_key optional on i386
|
| |
|
|
|
|
| |
* systemtap.spec.in (elfutils_version): Require 0.124 now.
|
| |
|
| |
|
|
|
|
| |
clean up the unused database tables and destory GTree on exit.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adding the support of automatically database creation and
dumping lket trace into mysql database
* configure.ac:
add the checking of mysql client library
* Makefile.in, configure:
regenerated
* runtime/lket/b2a/Makefile.am:
add the checking and optional compiling for mysql client library
* runtime/lket/b2a/Makefile.in:
regenerated
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
document signal syscall
hookiddefs.stp:
some changes to the hookid:
Now the hookid of a return type event(addevent.*.return)
should be an even number and its value should be the
corresponding entry event hookid +1.
The hookid of a non-return type event should be an odd
number.
Add the hookid of HOOKID_REGEVTDESC
register_event.stp:
add register_evt_desc() to register the description of an event.
Change the register_sys_event() to add the an argument
representing event description
Allow to use empty format string and empty field name when
calling register_event().
Change all calling to register_sys_event() to add an
argument which represents the event description.
Change register_evt_desc() and register_event() to add an argument
representing the event description string, which could help
facilitate the error debugging.
iosyscall.stp:
bugfix to add the variable GroupID and hookID
nfs.stp:
bugfix to add some omitted probe definitions.
nfs_proc.stp:
bugfix of the wrong calling to _lket_trace() for
nfs_proc.remove.entry.
|
|
|
|
|
|
|
| |
From David Wilder <dwilder@us.ibm.com>
* time.c (__stp_estimate_cpufreq): Short-circuit on s390.
(_stp_gettimeofday_ns): Use a fixed formula on s390 to
convert TOD clocks to nanoseconds.
|
| |
|
|
|
|
| |
* move 'em out
|
|
|
|
|
| |
* context.stp (probefunc): Return empty string for
userspace (< PAGE_OFFSET) pointers.
|
| |
|
|
|
|
| |
Makefile.am: add -DPKGLIBDIR='"$(pkglibexecdir)"' to AM_CPPFLAGS
|
| |
|
|
|
|
|
| |
* buildok/eighteen.stp: Fix for 2.6.18.
* buildok/two.stp: Ditto.
|
|
|
|
|
|
|
| |
PR 3278
* tapsets.cxx (hrtimer_derived_probe::emit_probe_entries): Only
restart timers when the session is still active and we updated the
expire time.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* session.h (struct systemtap_session): Add kernel_base_release
to store the kernel version without the -NNN suffix.
* main.cxx (main): Generate and use kernel_base_release.
* parse.cxx (eval_pp_conditional): Use kernel_base_release.
* tapsets.cxx (profile_derived_probe::profile_derived_probe):
Use kernel_base_release.
* tapsets.cxx (timer_builder::build): Support a wide variety of
timer varients -- jiffies, s/sec, ms/msec, us/usec, ns/nsec, and
hz. Use hrtimers automatically on kernels that have it.
(timer_builder::register_patterns): Bind all of the new timer
varients in one easy place.
(register_standard_tapsets): Call timer_builder::register_patterns.
(struct hrtimer_builder): Removed since timer_builder is generic.
* stapprobes.5.in: Document new timer.* functionality.
* tapsets.cxx (hrtimer_derived_probe_group::emit_probes): Add a
shared global for the actual hrtimer resolution, _stp_hrtimer_res.
(hrtimer_derived_probe_group::emit_module): Init _stp_hrtimer_res.
(hrtimer_derived_probe::emit_interval): Limit intervals at a
minimum to the hrtimer's actual resolution.
(hrtimer_derived_probe::emit_probe_entries): Forward timers
based on previous expiration instead of restarting relative.
testsuite/
* buildok/fourteen.stp: Test new timer functionality.
|
|
|
|
|
|
|
|
|
|
| |
* stack.c (_stp_kta): Rewrite. Use the _stap_symbols
struct instead of calling into the kernel.
* sym.c (_stp_kallsyms_lookup): Move here from runtime.h
* runtime.h: Get rid of all the symbol stuff that
did not belong here.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* .cvsignore: Changed 'stpd' reference to 'staprun'.
* INTERNALS: Ditto.
* buildrun.cxx (run_pass): Ditto.
* lket.5.in: Ditto.
* stap.1.in: Ditto.
* stapruncs.5.in: Ditto.
* examples/small_demos/demo_script.txt: Ditto.
* examples/small_demos/sys.stp: Ditto.
* systemtap.spec.in: Created a new subpackage,
"systemtap-runtime", that contains staprun.
* Makefile.am: Renamed 'stpd' to 'staprun' and moved it to
$(bindir).
* Makefile.in: Regenerated from Makefile.am.
* configure.ac: Incremented version number.
* configure: Regenerated from configure.ac.
|
|
|
|
|
|
|
|
|
|
| |
* README: Changed 'stpd' references to 'staprun'.
* README.doc: Ditto.
* TODO: Ditto.
* io.c: Ditto.
* print.c: Ditto.
* runtime.h: Ditto.
* bench2/bench.rb: Ditto.
|
|
|
|
|
|
| |
* bench/run_bench: Changed 'stpd' references to 'staprun'.
* bench/trans_bench: Ditto.
* where_func/README: Ditto.
|
|
|
|
|
|
| |
* Makefile: Changed 'stpd' references to 'staprun'.
* librelay.c: Ditto.
* stpd.c: Ditto.
|
|
|
|
|
| |
* transport.c: Changed 'stpd' references to 'staprun'.
* transport.txt: Ditto.
|
|
|
|
|
| |
* io.c: Changed 'stpd' references to 'staprun'.
* print.c: Ditto.
|
|
|
|
| |
* test/run.sh: Changed 'stpd' references to 'staprun'.
|
|
|
|
| |
* tskdispatch.stp: Changed 'stpd' reference to 'staprun'.
|
|
|
|
|
| |
* systemtap.samples/args.exp: Looks for 'staprun' instead of
'stpd'.
|
|
|
|
| |
* test.tcl: Looks for 'staprun' instead of 'stpd'.
|
|
|
|
|
|
|
| |
* transport.c (_stp_handle_start): Don't initialize timers here.
(_stp_transport_init): Initialize timers here.
(_stp_cleanup_and_exit): Don't kill timers or free print buffers here.
(_stp_transport_close): kill timers and free print buffers here.
|
|
|
|
|
|
|
| |
* time.c (_stp_init_time): Use dynamic percpu allocations
instead of evil static allocations.
(_stp_kill_time): Free percpu allocations and set
_stp_time to NULL so the timers are only deleted once.
|
|
|
|
|
| |
* io.c (_stp_vlog): Remove ifdef for STP_RELAYFS. Relayfs now
behaves the same as procfs.
|
| |
|
|
|
|
| |
Change to per_cpu_ptr(Stp_pbuf, smp_processor_id()) to get the per-cpu printing buffer
|
|
|
|
|
| |
* print.c: Replace STP_PRINT_BUF_LEN with STP_BUFFER_SIZE.
* string.c: Ditto.
|
| |
|
| |
|
|
|
|
|
| |
* transport.c (_stp_work_queue): Reenable some cleanup
code.
|
| |
|
|
|
|
|
| |
* transport.c (_stp_transport_init): Call _stp_print_init().
(_stp_cleanup_and_exit): Call _stp_print_cleanup().
|
|
|
|
|
|
|
|
|
|
|
| |
PR 3232
* print.c (_stp_print_init): New. Alloc per-cpu buffers.
(_stp_print_cleanup): New. Free per-cpu buffers.
(_stp_print_flush): Use per_cpu_ptr().
* string.c (_stp_sprintf): Ditto.
(_stp_vsprintf): Ditto.
(_stp_string_cat_cstr): Ditto.
(_stp_string_cat_char): Ditto.
|
| |
|
|
|
|
|
| |
* lket/b2a/lket_b2a.c (main): Correct arguments to fseek.
(dump_data): Work around a spurious compiler warning.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 3233
./
* stapfuncs.5.in: Document new gettimeofday_ns.
runtime/
* time.c (stp_time_t): Use ns for the base time, and freq is now kHz.
(__stp_estimate_cpufreq): Compute kHz instead of MHz.
(__stp_time_timer_callback, __stp_init_time): Compute base in ns.
(__stp_time_cpufreq_callback): Record kHz instead of MHz.
(_stp_init_time): Record kHz, and disable preemption to avoid a race
in the cpufreq notifier.
(_stp_gettimeofday_ns): Converted from _stp_gettimeofday_us.
tapset/
* timestamp.stp (gettimeofday_ns): New function
(gettimeofday_us, gettimeofday_ms, gettimeofday_s):
Use gettimeofday_ns as the base unit.
testsuite/
* buildok/timestamp.stp: add gettimeofday_ns test.
|
| |
|
|
|
|
|
|
|
|
|
| |
Be sync with the runtime printing changes made by Martin
lket/b2a/lket_b2a.c, lket/b2a/lket_b2a.h:
Be sync with the recent runtime printing changes made by Martin.
Some clean up work before adding the support of dumping data into MySQL
Bug fix of segment fault when an event is not registered.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
tapset/rpc.stp:
Some changes and more comments of RPC tapset
tapset/LKET/rpc.stp:
New trace hooks for RPC activities on client, server and scheduler sides
tapset/LKET/register_event.stp:
Add the register_sys_event() calls for new RPC trace hooks
tapset/LKET/hookid_defs.stp:
Add the definitions of RPC trace hooks
|