| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
runtime/
* loc2c-runtime.h (kread): Let it work with const types.
testsuite/
* systemtap.base/deref.stp: Test kread with const sources.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* string.c (_stp_string_init): Deleted.
(_stp_sprintf): Deleted.
(_stp_vsprintf): Deleted.
(_stp_string_cat_cstr): Deleted.
(_stp_string_cat_string): Deleted.
(_stp_string_cat_char): Deleted.
(_stp_string_ptr): Deleted.
(_stp_string_cat): Deleted.
(_stp_snprintf): Moved from vsprintf.c.
(_stp_vscnprintf): Moved from vsprintf.c.
* string.h (STP_STRING_SIZE): Deleted.
(STP_NUM_STRINGS): Deleted.
Remove all references to type "String".
* vsprintf.c (_stp_vscnprintf): Moved to string.c.
(_stp_snprintf): Moved to string.c
* sym.c (_stp_symbol_sprint): Replaced with
_stp_symbol_print, which writes to the print buffer.
(_stp_symbol_sprint_basic): Replaced with
_stp_symbol_snprint.
* runtime.h: Include io.c.
* stat-common.c: Use new _stp_print* functions.
* stat.c: Ditto.
* regs.c: Renamed to regs-ia64.c.
* current.c: Renamed regs.c.
* regs-ia64.c: New file (renamed from regs.c).
* stack.c (_stp_stack_sprint): Renamed _stp_stack_print
and now just prints to the print buffer. Calls
__stp_stack_print instead of __stp_stack_sprint.
(_stp_stack_snprint): New function. Calls _stp_stack_print and
then copies the print buffer into a string.
(_stp_stack_printj): Deleted.
(_stp_ustack_sprint): Deleted.
* stack-*.c: Rewritten to print instead of writing to strings.
Uses new _stp_print* functions.
* print.c (_stp_printf): Create new function instead of macro.
(_stp_print): Ditto.
(_stp_print_char): New function.
* map.c: Use _stp_print() and _stp_print_char()
instead of _stp_print_cstr().
* io.c (_stp_vlog): Use _stp_print() instead
of _stp_string_cat_cstr().
* copy.c (_stp_string_from_user): Deleted.
|
|
|
|
| |
* symbols.c: Comment out many debug lines.
|
|
|
|
|
|
|
|
|
|
|
| |
* io.c (_stp_vlog): Use dynamic percpu allocations
instead of very wasteful static allocations.
* print.c (_stp_print_init): Do percpu allocations
for io.c.
(_stp_print_cleanup): Free percpu allocations.
* string.c (_stp_sprintf): Overflow check needed
to be >= instead of >.
|
|
|
|
|
|
|
|
|
|
|
| |
* alloc.c (_stp_alloc_percpu): Don't implement
our own; just call __alloc_percpu with appropriate args
for the OS version.
(_stp_free_percpu): Delete.
* map.c (_stp_map_init): When calling kmalloc_node, first
call cpu_to_node() to get the proper node number.
* stat.c (_stp_stat_del): Call free_percpu()
instead of _stp_free_percpu().
|
| |
|
|
|
|
|
|
| |
* procfs.c: Count allocated IO memory.
* symbols.c: Use _stp_kmalloc() and _stp_kzalloc().
* transport.c: Count allocated IO memory.
|
|
|
|
|
|
|
|
|
|
| |
* alloc.c (_stp_kmalloc): New function. Call kmalloc
with the coirrect flags and track usage.
(_stp_kzalloc): Ditto.
* map.c: Use new alloc calls.
* print.c: Ditto.
* stat.c: Ditto.
* time.c: Ditto.
|
| |
|
|
|
|
| |
* loc2c-runtime.h (store_deref): Use "Zr" constraint for 64-bit case.
|
|
|
|
|
|
|
|
|
| |
runtime/
* loc2c-runtime.h (kread, kwrite): Tweaks to work better with
reading and writing pointer values.
testsuite/
* systemtap.base/deref.stp: Rewrite test, and now also check the ability
to read/write pointers.
|
| |
|
|
|
|
| |
* map-gen.c (_stp_map_exists): New. Check for membership only.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 3079
runtime/
* loc2c-runtime.h (kread, kwrite): New macros to safely read/write
values from kernel pointers. This includes a workaround for 64-bit
numbers on i386 platforms.
testsuite/
* systemtap.base/deref.stp: Use the new kread macro that should work
fine with 64-bit numbers on i386 platforms. Also expand the test to
include writes with kwrite.
* systemtap.base/deref.exp: Remove the setup_kfail.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 3708
* map.c (str_copy): Check for NULL pointers.
(_new_map_set_int64): Don't check val for 0.
(_new_map_set_str): Don't check val for NULL.
* map-gen.c (VAL_IS_ZERO): Removed.
(_stp_map_del): New.
(__stp_map_set): Don't check for zero.
* pmap-gen.c (VAL_IS_ZERO): Removed.
(_stp_pmap_del): New.
(__stp_pmap_set): Don't check for zero.
|
|
|
|
|
|
| |
* symbols.c (_stp_del_module): Fix so memory allocated
for module 0 (kernel) is freed.
(_stp_free_modules): No need to lock module list.
|
|
|
|
| |
* runtime.h: Include mm.h.
|
|
|
|
| |
* transport.c: Fixes to use the new 2.6.20 workqueue API.
|
|
|
|
| |
bugfix for NULL appname when search appNameTree.
|
|
|
|
|
|
| |
* lket/b2a/Makefile.in: Regenerated. This needed to be done since
lket/b2a/README was removed but lket/b2a/Makefile.in still had a
reference to it which was causing "make distdir" to fail.
|
|
|
|
|
|
|
|
|
|
|
| |
PR 3079
* loc2c-runtime.h (deref, store_deref): Fork x86 and x86-64
variants. Remove dysfunctional 64-bit ops from x86.
2006-12-18 Frank Ch. Eigler <fche@elastic.org>
* vfs.stp (ppos_pos): Protect contents with deref(), though
this blocks operation on i686 due to bug #3079.
|
|
|
|
| |
* print.c (_stp_print_flush): Add a likely() marker to the hot path.
|
|
|
|
| |
* regs.h (s390x REG_IP): Parenthesize for warning-free builds.
|
|
|
|
|
|
| |
* symbols.c (get_sections): Set buffer sizes to large enough
sizes to hold all possible values, but also include checks in case
we are wrong.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 3681.
* staptree.h (struct vardecl): Add a literal 'init' member for the
initialization value of globals.
* staptree.cxx (vardecl::vardecl): Initialize 'init' to NULL.
(vardecl::print): Print global init value during pass-1 output.
* main.cxx (printscript): Print global init values during verbose
pass-2 output.
* parse.cxx (parser::parse_global): Set the initialization literal of
global vardecls.
* translate.cxx (var::init): Don't unconditionally override the value
of numeric globals when the module_param isn't used.
(c_unparser::emit_global_param): Write numeric module_params directly
into the global variable, as an int64_t instead of long.
(c_unparser::emit_global): Add initialization to global declarations.
Don't create a temp module_param long for numeric globals anymore.
runtime/
* runtime.h (param_set_int64_t, param_get_int64_t,
param_check_int64_t): New functions to allow taking module parameters
directly as int64_t values.
testsuite/
* systemtap.base/global_init.exp, systemtap.base/global_init.stp: New
test for checking the timeliness of global initialization.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 3623.
* tapsets.cxx (timer_derived_probe_group::emit_module_decls): Restart
the timers if we are in STARTING or RUNNING state.
(hrtimer_derived_probe_group::emit_module_decls): Ditto.
(be_derived_probe_group::emit_module_init): indicate error to the rest
of the initialization if any begin probes fail.
* translate.cxx (c_unparser::emit_module_init): Set the global error
state on an initialization error so timers know to shut down.
runtime/
* time.c (stp_timer_reregister): Add a global to control whether the
gettimeofday timer should restart itself, for clean shutdown.
(__stp_time_timer_callback): Check the global.
(_stp_kill_time, _stp_init_time): Set the global.
(_stp_gettimeofday_ns): Switch to preempt_enable_no_resched.
* time.c (__stp_time_cpufreq_callback): Use the cpu# from the notifier.
(_stp_init_time): No need to disable preemption around cpufreq init.
|
|
|
|
|
| |
* bench2/bench.rb: Fixes for the latest runtime
changes.
|
| |
|
|
|
|
|
| |
change the return codes of lket-b2a and add a new macro b2a_error() for error
reporting
|
| |
|
|
|
|
|
|
|
|
|
| |
runtime/lket/b2a/lket_b2a.[ch]: bugfix for #3536
lket_trace.stp: add the logging of pid, ppid
process.stp: add logging of tid, ppid for lket_internal.process.execve.
Change to use for_each_process() in process_snapshot() to get
the info of all running processes.
register_event.stp: update the registering codes of execve event.
|
| |
|
|
|
|
|
| |
* symbols.c (do_kernel_symbols): Add sizeof(long) to sym_base
to preserve 64-bit alignment.
|
|
|
|
|
|
|
|
| |
* procfs.c (_stp_proc_write_cmd): For STP_SYMBOLS,
type field is a long to preserve alignment.
Use STP_ALLOC_FLAGS.
* symbols.c: Use STP_ALLOC_FLAGS.
|
|
|
|
|
|
|
| |
* alloc.c (STP_ALLOC_FLAGS): Define.
Cleanup ifdefs.
* map.c: Use STP_ALLOC_FLAGS.
* stat.c: ditto.
|
|
|
|
| |
bugfix of lket-b2a
|
|
|
|
| |
bugfix of the obsolete buf_info and consumed_info.
|
|
|
|
|
|
|
|
| |
* transport_msgs.h: Change all ints to int32_t. Prefix
all struct names with "_stp".
* transport.c: Use new struct names.
(_stp_handle_start): Send pointer size and endianess.
* procfs.c: Use new struct names.
|
|
|
|
|
|
|
|
|
|
|
| |
* librelay.c: Change all references to transport messages
to use the new names with "_stp" prefix.
(stp_main_loop): For STP_SYMBOLS, check pointer size and
endianess to confirm staprun is compatible with the kernel.
* librelay.h: Move a bunch of common includes here.
* stpd.c: Cleanup includes.
* symbols.c: Ditto.
|
|
|
|
| |
* sym.h: Change int to int32_t.
|
|
|
|
|
|
|
|
| |
make fork/execce trace hooks lket internally and turned on by default.
add stoptrace_fork and stoptrace_execve flags for lket to control
stopping fork/execve in user scripts.
update lket-b2a and lket man page.
|
| |
|
| |
|
| |
|
|
|
|
| |
* symbols.c (_stp_do_module): Fix error message.
|
| |
|
|
|
|
|
| |
* io.c (_stp_vlog, _stp_dbug): Make first parameter const.
* runtime.h: Update prototype for _stp_dbug.
|
|
|
|
|
| |
* runtime/regs.c: patch from Bibo Mao for fixing the return
value on IA64 (bz #3404).
|
| |
|
|
|
|
|
|
| |
Document signal trace hooks into lket man page
bugfix of lket-b2a for event description data insert
|