diff options
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/ChangeLog | 2519 | ||||
-rw-r--r-- | runtime/staprun/ChangeLog | 910 | ||||
-rw-r--r-- | runtime/transport/ChangeLog | 862 |
3 files changed, 0 insertions, 4291 deletions
diff --git a/runtime/ChangeLog b/runtime/ChangeLog deleted file mode 100644 index cd0c6e35..00000000 --- a/runtime/ChangeLog +++ /dev/null @@ -1,2519 +0,0 @@ -2009-02-18 Frank Ch. Eigler <fche@elastic.org> - - PR 9866 band-aid. - * stack.c, stack-i386.c, stack-x86_64.c (CONFIG_STACKTRACE): - Also make conditional on KERNEL_VERSION > 2.6.26. - -2009-02-18 Will Cohen <wcohen@redhat.com> - - PR 9860 - * stack-i386.c (_stp_stack_print_fallback): Remove context argument. - -2009-02-18 David Smith <dsmith@redhat.com> - - * io.c (_stp_log): Removed unused function. - * map.c (_stp_cmp): Replace _stp_log() with dbug(). - * mempool.c (_stp_mempool_resize): Removed unused function. - * print.c (next_fmt): Removed unused function. - * procfs.c: Removed unused variable '_stp_num_procfs_files'. - * regs.c (_stp_ret_addr): Removed unused function. - * string.c (_stp_text_str): Removed unused variable 'len'. - * string.h: Removed unused variable '_stdout_' and function - declaration for deleted function '_stp_vsprintf'. - * sym.c: Removed unused variables. - * unwind.c (_stp_create_unwind_hdr): Removed unused function. - -2009-02-17 Mark Wielaard <scox@redhat.com> - - * sdt.h: Move to ../includes/sys. - -2009-02-16 Mark Wielaard <scox@redhat.com> - - * sdt.h (STAP_PROBE): Take provider and probe as arguments. - -2009-02-16 Mark Wielaard <scox@redhat.com> - - * sdt.h (STAP_PROBE9): Fix )( typo in parm9. - -2009-02-15 Stan Cox <scox@redhat.com> - - * sdt.h (STAP_PROBE): Handle c++ via .probe, c via .label. - -2009-02-13 David Smith <dsmith@redhat.com> - - * stack.c: Fixed compile problems on systems with older kernels - (like RHEL4). - - * procfs.c: Added macros to guard against multiple inclusion. - -2009-02-12 David Smith <dsmith@redhat.com> - - * procfs.c (_stp_rmdir_proc_module): Changed - _stp_lock_debugfs()/_stp_unlock_debugfs() to - _stp_lock_transport_dir()/_stp_unlock_transport_dir(). - (_stp_mkdir_proc_module): Ditto. - -2009-02-11 Tim Moore <timoore@redhat.com> - - * stack.c (_stp_stack_print_fallback): Implementation that uses kernel - stacktrace support if available. - (_stp_stack_print_tsk, _stp_stack_snprint_tsk): New functions. - * stack-x86_64.c (_stp_stack_print_fallback): Use our own fallback if - no kernel stacktrace support. - * stack-x86_64.c (_stp_stack_print_fallback): ditto. - -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. - - * 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. - -2009-02-06 Frank Ch. Eigler <fche@elastic.org> - - * autoconf-procfs-owner.c: New test. - * procfs.c (_stp_mkdir_proc_module, _stp_create_procfs): Use it. - -2009-02-05 Frank Ch. Eigler <fche@elastic.org> - - PR 9740/9816? - * autoconf-vm-area.c: New test. - -2009-02-02 Mark Wielaard <mjw@redhat.com> - - * sdt.h: Add STAP_PROBE7, 8 and 9 variants. - -2009-01-27 Mark Wielaard <mjw@redhat.com> - - * sdt.h (STAP_PROBE): Use "g", not "r", for asm args. - -2008-01-27 Stan Cox <scox@redhat.com> - - * sdt.h (struct _probe_): Make probe_name a STAP_PROBE_STRUCT_ARG. - -2009-01-26 Mark Wielaard <mjw@redhat.com> - - * sdt.h: DTRACE_PROBE5 is STAP_PROBE5, not 4, likewise for 6. - -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. - -2009-01-13 Jim Keniston <jkenisto@us.ibm.com> - - PR 7082. - * uprobes2/uprobes.c: On exec, free up outstanding - uretprobe_instances and tick down the uproc's ref-count - accordingly, so the (old image's) uproc goes away as - desired. - -2009-01-12 Wenji Huang <wenji.huang@oracle.com> - - * transport/symbols.c (_stp_sort): Adapt it to 2.6.29. - -2009-01-06 Frank Ch. Eigler <fche@elastic.org> - - PR9699. - * autoconf-task-uid.c: New test. - -2008-12-21 Stan Cox <scox@redhat.com> - - * sduprobes.h (STAP_PROBE): Put block around probe point. - -2008-12-16 Stan Cox <scox@redhat.com> - - * sduprobes.h (STAP_PROBE): Add synthetic reference to probe label. - -2008-12-09 Frank Ch. Eigler <fche@elastic.org> - - * time.c (_stp_gettimeofday_ns): Protect some more against freq=0. - -2008-12-08 Wenji Huang <wenji.huang@oracle.com> - - * uprobes2/uprobes_x86.c (handle_riprel_insn): Fix the warning. - -2008-12-04 Stan Cox <scox@redhat.com> - - * sduprobes.c (STAP_PROBE_START): Remove. - * sduprobes.h (STAP_PROBE_START): Remove. - (DTRACE_PROBE): New. - -2008-11-26 Stan Cox <scox@redhat.com> - - * sduprobes.h (STAP_PROBE1): Add USE_STAP_DEBUGINFO_PROBE. - -2008-11-26 Frank Ch. Eigler <fche@elastic.org> - - PR 4886. - * sym.c (_stp_module_check): Perform assertive - build-id checking for kernel versions >= 2.6.27. - -2008-11-26 Frank Ch. Eigler <fche@elastic.org> - - * autoconf-synchronize-sched.c: New file. - -2008-11-25 Frank Ch. Eigler <fche@elastic.org> - - PR 7046. - * task_finder.c (__stp_utrace_task_finder_target_quiesce): Only - issue vm_callbacks for process main threads. - -2008-11-24 Wenji Huang <wenji.huang@oracle.com> - - From Srikar Dronamraju: - * runtime.h: Use for_each_cpu_mask always. - -2008-11-11 Stan Cox <scox@redhat.com> - - * sduprobes.c: New file. - * sduprobes.h: New file. - -2008-11-17 Wenji Huang <wenji.huang@oracle.com> - - * runtime.h: Rename for_each_cpu to stp_for_each_cpu for 2.6.28. - * counter.c: Ditto. - * map-stat.c: Ditto. - * map.c: Ditto. - * pmap-gen.c: Ditto. - * stat.c: Ditto. - * transport/procfs.c: Ditto. - -2008-11-04 David Smith <dsmith@redhat.com> - - PR 5274. - * syscall.h: Added s390 task_finder support. - - From Jim Keniston, PR 5274. - * uprobes/uprobes_s390.h (arch_get_cur_sp): New function. - (arch_predict_sp_at_ret): Ditto. - -2008-11-04 Frank Ch. Eigler <fche@elastic.org> - - From Masami Hiramatsu <mhiramat@redhat.com>, PR 6028. - * regs-ia64.c (bspcache): Expand documentation. - -2008-10-28 Frank Ch. Eigler <fche@elastic.org> - - From Jim Keniston: - * autoconf-oneachcpu-retry.c: Tweak #include's for broader - compatibility. - -2008-10-24 Josh Stone <joshua.i.stone@intel.com> - - * autoconf-hrtimer-getset-expires.c: New file. - -2008-10-17 Wenji Huang <wenji.huang@oracle.com> - - * task_finder_vma.c (__stp_tf_vma_get_free_entry): Initialize entry. - -2008-10-07 Frank Ch. Eigler <fche@elastic.org> - - PR 4886. - * sym.c (_stp_module_check): Tweak & simplify build-id checking. - Weaken consequences of mismatch temporarily due to fedora bug. - * sym.h: Eliminate special cased values of module->notes_sect. - -2008-10-06 Mark Wielaard <mjw@redhat.com> - - * utrace_compatibility.h: Add workaround for fedora 9 2.6.26 kernels. - -2008-10-06 Wenji Huang <wenji.huang@oracle.com> - - PR 4886 - * sym.h (_stp_module): Add several fields to store build-id. - * sym.c (_stp_module_check): New function to check build-id. - * staprun/staprun.c (send_relocation_kernel): Send build-id of runtime - kernel if there. - * transport/symbols.c (_stp_do_relocation): Update note section. - (_stp_section_is_interesting): No filter to .note.gnu.build-id. - -2008-10-03 Mark Wielaard <mjw@redhat.com> - - * procfs.c (_stp_rmdir_proc_module): Remove debug output from warning. - -2008-10-03 Mark Wielaard <mjw@redhat.com> - - * procfs.c (_stp_rmdir_proc_module): Usage count warning - depends on kernel version. - -2008-10-02 Tim Moore <timoore@redhat.com> - - * addr-map.c (add_bad_addr_entry): Fix bugs in allocating a new - table and copying old entries into the new table. - -2008-09-30 Tim Moore <timoore@redhat.com> - - * addr-map.c (add_bad_addr_entry): Rewrite allocation of address - table to simplify locking and eliminate a race condition. - -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-17 Frank Ch. Eigler <fche@elastic.org> - - PR 6487, 6504. - From Masami Hiramatsu <mhiramat@redhat.com> - * print_new.c (stp_print_flush): Use new utt_reserve(). - -2008-09-12 Masami Hiramatsu <mhiramat@redhat.com> - - BZ 6028 - * regs-ia64.c (bspcache): Use REG_IP instead of pp to check probe - address. - -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. - -2008-09-10 Frank Ch. Eigler <fche@elastic.org> - - * runtime.h (STP_USE_FRAME_POINTER): Remove architecture #if's. - All will activate it if CONFIG_FRAME_POINTER unless - STP_USE_DWARF_UNWINDER. - * stack-i386.c: (__stp_stack_print): Handle !DWARF and !FRAME - configuration. - -2008-09-10 Mark Wielaard <mjw@redhat.com> - - * sym.h (_stp_module): Rename module_base to dwarf_module_base. - * unwind.c (adjustStartLoc): Document and use dwarf_module_base. - -2008-09-10 Mark Wielaard <mjw@redhat.com> - - * runtime.h (CONFIG_FRAME_POINTER): Don't enable when - STP_USE_DWARF_UNWINDER is already defined. - -2008-09-10 Mark Wielaard <mjw@redhat.com> - - * sym.h (_stp_module): Add module_base field. - * unwind.c (adjustStartLoc): New function. - (_stp_search_unwind_hdr): Use adjustStartLoc. - (unwind): Likewise. - -2008-09-10 Mark Wielaard <mjw@redhat.com> - - * unwind.c (unwind): Use _stp_mod_sec_lookup to get module and - unwind tables. - * runtime.h (STP_USE_FRAME_BUFFER): Disable by default for now. - * stack-x86_64.c (__stp_stack_print): Add levels to - _stp_stack_print_fallback call. - -2008-09-09 Masami Hiramatsu <mhiramat@redhat.com> - - * regs-ia64.c (__ia64_fetch_register): Return the address of the - register. - (ia64_fetch_register): Use __ia64_fetch_register. - * syscall.h (____stp_user_syscall_arg): Use __ia64_fetch_register. - (__stp_user_syscall_arg): Wrapping ____stp_user_syscall_arg to pass the - unwind address cache. - * task_finder.c (__stp_utrace_task_finder_target_syscall_): Added dummy - unwind address cache. - -2008-09-09 Masami Hiramatsu <mhiramat@redhat.com> - - * syscall.h: Added ia64 support. - -2008-09-09 Mark Wielaard <mwielaard@redhat.com> - - * sym.c (_stp_mod_sec_lookup): New function, extracted from - _stp_kallsyms_lookup. - -2008-09-09 Mark Wielaard <mwielaard@redhat.com> - - * sym.c (_stp_kallsyms_lookup): Correct this_section_offset - calculation. - -2008-09-08 Tim Moore <timoore@redhat.com> - - PR 1288 - * addr-map.c: New file with functions for looking up addresses - * loc2c-runtime.h (deref, store_deref): Use lookup_bad_addr to - avoid dereferencing known dangerous addresses. - * runtime.h: Include addr-map.c. - -2008-09-06 Frank Ch. Eigler <fche@elastic.org> - - PR 6445 - * task_finder.c (stap_start_task_finder): When _stp_target - is set (stap -c or -x mode), restrict initial utrace attach - iteration to target process only. - -2008-09-01 Frank Ch. Eigler <fche@elastic.org> - - * task_finder.c: Move CONFIG_UTRACE assertion here. - * task_finder_vma.c (__stp_tf_add_vma): Make printk conditional. - -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. - -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. - -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> - - * task_finder.c: Supports original and new utrace interfaces. - * utrace_compatibility.h (utrace_attach_task): Compatibility layer - for original utrace interface. - - * 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 - * task_finder.c (__stp_utrace_task_finder_target_quiesce): - Quiesces thread before turning on syscall tracing. - -2008-08-14 Frank Ch. Eigler <fche@elastic.org> - - PR 6842. - * task_finder.c (__stp_utrace_task_finder_target_death): Tolerate - null tsk->signal. - -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-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. - - * 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-24 Josh Stone <joshua.i.stone@intel.com> - - * runtime/autoconf-module-nsections.c: removed - * runtime/autoconf-oneachcpu-retry.c: added - -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-18 Frank Ch. Eigler <fche@elastic.org> - - BZ 442528, From Masami Hiramatsu <mhiramat@redhat.com> - * regs-ia64.c (ia64_stap_get_arbsp): New function. - -2008-07-17 Frank Ch. Eigler <fche@elastic.org> - - * sym.c (_stp_kallsyms_lookup, _stp_module_relocate): Add - multiple-section-per-module support. - * sym.h (_stp_section): New type for separately relocatable - _stp_module pieces. - -2008-07-12 Frank Ch. Eigler <fche@elastic.org> - - PR 6738. - * loc2c-runtime.h: #include {asm,linux}/uaccess.h as autoconf'd. - * unwind/i386.h (user_mode_vm, FIX_VDSO): #ifdef for older kernels. - * unwind/x86_64.h (VSYSCALL_START): speculative #ifdef for same. - * unwind/unwind.h (BUILD_BUG_ON_ZER): Ditto. - -2008-07-10 Frank Ch. Eigler <fche@elastic.org> - - PR 6736. - * sym.c (_stp_module_relocate): Generalized to search all - _stp_module[]s. - (_stp_kallsyms_lookup_name): Gone. - (_stp_find_module_by_addr): Rewritten. - (_stp_get_unwind_info): Temporarily gone. - * sym.h (_stp_module): Simplify structure. - * unwind.c: Adapt just enough to compile with eliminated elements. - - * probes.stp: Removed unused file. - -2008-07-09 Mark Wielaard <mwielaard@redhat.com> - - PR 6732 - * autoconf-real-parent.c: New file. - * task_finder.c (__stp_utrace_task_finder_report_exec): Define - real_parent using STAPCONF_REAL_PARENT. Undefine when no longer - needed. - -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-24 David Smith <dsmith@redhat.com> - - From: Srinivasa DS <srinivasa@in.ibm.com> - * syscall.h: Added powerpc support. - -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. - - * task_finder.c (__stp_utrace_task_finder_report_exec): Handles - relative exec paths correctly. - - * task_finder_vma.c (__stp_tf_vma_hash): Improved determination of - whether this is a 64-bit platform. - * syscall.h: Handles kernels with older style register - definitions. - - * task_finder.c (__stp_tf_vm_cb): New function. - (stap_register_task_finder_target): Sets up syscall entry and - syscall exit handlers. - (__stp_find_file_based_vma): New function. - (__stp_utrace_task_finder_target_syscall_entry): New function. - Saves vma information off at syscall entry. - (__stp_target_call_vm_callback): New function. - (__stp_utrace_task_finder_target_syscall_exit): New function. - Handles changes to memory maps based on information saved at - syscall entry. - * syscall.h: New file containing syscall function. - * task_finder_vma.c: New file containing saved vma information - handling functions. - - * regs.h: Removed trailing semicolons from macro definitions. - -2008-06-17 David Smith <dsmith@redhat.com> - - * task_finder.c (__stp_utrace_attach_match_filename): Uses new - __STP_ATTACHED_TASK_EVENTS macro to determine which events to set - on a newly found process based on whether the - stap_task_finder_target structure has a vm_callback defined. - (stap_start_task_finder): Ditto. - -2008-06-16 David Smith <dsmith@redhat.com> - - * task_finder.c (stap_start_task_finder): Improved callback - handling. - -2008-06-10 David Smith <dsmith@redhat.com> - - * task_finder.c (struct stap_task_finder_target): Added - vm_callback public field. - (stap_register_task_finder_target): Sets up .report_quiesce - handler. - (__stp_utrace_task_finder_target_quiesce): New function. - -2008-06-09 David Smith <dsmith@redhat.com> - - * task_finder.c (__stp_utrace_task_finder_report_exec): Handles - 2.6.25 kernels. - -2008-06-06 David Smith <dsmith@redhat.com> - - * task_finder.c: Added some debug logic. Use - '-DDEBUG_TASK_FINDER' to enable. - (stap_utrace_attach): Renamed from '__stp_utrace_attach'. - (__stp_utrace_attach_match_filename): Calls callback with - notification that this is a process or thread event. - (__stp_utrace_attach_match_tsk): Ditto. - (__stp_utrace_task_finder_report_clone): Ditto. - (__stp_utrace_task_finder_report_exec): Ditto. - (stap_utrace_task_finder_report_death): Ditto. - (stap_start_task_finder): Ditto. - (stap_stop_task_finder): Added debug logic. - -2008-05-29 Stan Cox <scox@redhat.com> - - * map.c (print_keytype): Remove. - (print_valtype): Remove. - (_stp_map_printn): Remove. - (_stp_map_print): Remove. - (_stp_pmap_printn): Remove. - * stat-common.c (_stp_stat_print_valtype): Remove. - * stat.c (__stp_stat_print): Remove. - (_stp_stat_print_cpu): Remove. - (_stp_stat_print): Remove. - * Makefile: Delete. - * tests: Delete. - * probes: Delete. - -2008-05-28 David Smith <dsmith@redhat.com> - - * task_finder.c (__stp_utrace_attach_match_filename): Added - register_p parameter, which is passed on to the callback. Only - adds death notification if register_p is 1. If register_p is 0, - removes death notification. - (__stp_utrace_attach_match_tsk): Moved code from - __stp_utrace_task_finder_report_clone that handles the details of - grabbing a task's path. - (__stp_utrace_task_finder_report_clone): Calls new - __stp_utrace_attach_match_tsk(). - (__stp_utrace_task_finder_report_exec): Notifies upper layer that - it might need to detach from newly exec'ed process.` - -2008-05-27 Josh Stone <joshua.i.stone@intel.com> - - PR 6432 - * loc2c-runtime.h (kread, kwrite, deref, store_deref): Add - architecture-neutral implementations, using probe_kernel_* - facilites (controlled by autoconf). - * autoconf-probe-kernel.c: test for above. - -2008-05-21 David Smith <dsmith@redhat.com> - - * task_finder.c (__stp_utrace_attach_match_filename): Added - event_flag parameter of event to pass to callback. - (__stp_utrace_task_finder_target_death): Ditto. - (__stp_utrace_task_finder_report_clone): Calls - __stp_utrace_attach_match_filename() with new argument. - (__stp_utrace_task_finder_report_exec): Ditto. - (stap_start_task_finder): Calls callback with an invalid - event_flag since this callback call isn't related to an event. - -2008-05-16 David Smith <dsmith@redhat.com> - - PR 6499. - * task_finder.c (stap_register_task_finder_target): Added error - check. - (__stp_utrace_task_finder_report_clone): Ditto. - (stap_utrace_detach_ops): Uses do_each_thread/while_each_thread - instead of for_each_process (which only iterated among process - group leaders instead of all threads). - (stap_start_task_finder): Ditto. - -2008-05-08 David Smith <dsmith@redhat.com> - - PR 6500. - * task_finder.c (__stp_utrace_task_finder_report_exec): Moved - attach logic to __stp_utrace_attach_match_filename(). - (__stp_utrace_attach_match_filename): New function. - (__stp_utrace_task_finder_report_clone): Calls - __stp_utrace_attach_match_filename() to attach to newly cloned - threads. - -2008-05-06 Masami Hiramatsu <mhiramat@redhat.com> - - PR 5648 - * print_old.c (stp_print_flush): Fix unaligned access warning on - ia64. - * print_new.c (stp_print_flush): Ditto. - -2008-05-06 Masami Hiramatsu <mhiramat@redhat.com> - - PR 5648 - * vsprintf.c (_stp_vsnprintf): Fix memcpy's endianess issue. - -2008-05-05 Frank Ch. Eigler <fche@elastic.org> - - PR 6481. - * time.c (__stp_time_timer_callback): Reenable irq's before - mod_timer. - -2008-05-05 David Smith <dsmith@redhat.com> - - * task_finder.c (stap_utrace_detach_ops): Make sure we ignore - /sbin/init. - (__stp_utrace_attach): Added function to handle details of - attaching a utrace engine. - (__stp_utrace_task_finder_report_clone): Calls - __stp_utrace_attach. - (__stp_utrace_task_finder_report_exec): Ditto. - (stap_start_task_finder): Ditto. - -2008-04-30 Masami Hiramatsu <mhiramat@redhat.com> - - PR 5648 - From Shaohua Li <shaohua.li@intel.com> - * vsprintf.c (_stp_vsnprintf): Fix unaligned access warning on ia64. - -2008-04-29 David Smith <dsmith@redhat.com> - - * task_finder.c: Made more robust by ensuring that all utrace - attaches have a corresponding utrace detach. - -2008-04-28 Frank Ch. Eigler <fche@elastic.org> - - * runtime.h (TEST_MODE): Remove. - -2008-04-25 David Smith <dsmith@redhat.com> - - From Srinivasa <srinivasa@in.ibm.com> - * task_finder.c (__stp_get_mm_path): Fixed kernel 2.6.25 change. - -2008-04-24 David Smith <dsmith@redhat.com> - - * task_finder.c (__stp_get_mm_path): Made kernel 2.6.25 changes. - -2008-04-16 David Smith <dsmith@redhat.com> - - * task_finder.c (__stp_get_mm_path): Made kernel 2.6.18 changes. - -2008-04-15 David Smith <dsmith@redhat.com> - - PR 5961 (partial) - * task_finder.c (stap_start_task_finder): When an interesting - thread is found that is already running, make sure to set up - thread death notification. - -2008-04-15 hunt <hunt@redhat.com> - * print.c (_stp_pbuf_full): Delete. - -2008-04-15 hunt <hunt@redhat.com> - * stack-x86_64.c (_stp_stack_print_fallback): Add levels. - (__stp_stack_print): Count levels properly. - -2008-04-15 Martin Hunt <hunt@redhat.com> - - Finish support for limits on backtrace depth. - * runtime.h (MAXTRACE): Default to 20. - * stack.c (_stp_stack_print): Call __stp_stack_print - with levels set properly. - * sym.c (_stp_func_print): Return a value indicating - if something was printed. - - Support for i386 and x86_64 on 2.6.25 kernel - * unwind/i386.h: Support unified registers on 2.6.25. - Remove unused frame stuff, including STACK_*. - * stack-i386.c (__stp_stack_print): Support unified - registers on 2.6.25. - * regs.h (REG_FP): Define for i386. - -2008-04-15 Frank Ch. Eigler <fche@elastic.org> - - PR 6410. - * unwind.c, unwind.h: Make body conditional in STP_USE_DWARF_UNWINDER. - * stack-x86_64.c (__stp_stack_print): Tolerate !unwinder. - -2008-04-15 Frank Ch. Eigler <fche@elastic.org> - - PR 6405 - * autoconf-module-nsections.c: New file. - -2008-04-15 Frank Ch. Eigler <fche@elastic.org> - - * unwind/i386.h (STACK_BOTTOM, STACK_TOP): Comment out these - unused definitions, for they collide with some kernels - (2.6.25-0.121.rc5.git4 rawhide). - -2008-04-13 Frank Ch. Eigler <fche@elastic.org> - - * print.c (_stp_pbuf_full): New function to note full print buffer. - * stack-{i386,x86_64}.c: Use it in all stack-searching loops, to - impose another limit against unbounded iteration. - -2008-03-31 Martin Hunt <hunt@redhat.com> - - * runtime.h (STP_USE_DWARF_UNWINDER): Define. - -2008-04-04 Masami Hiramatsu <mhiramat@redhat.com> - - PR 6028 - * loc2c-runtime.h (fetch_register): Call ia64_fetch_register with - the address of c->unwaddr. - * regs-ia64.c (ia64_fetch_register): Don't unwind stack if it has - already unwound stack in same probe. - -2008-03-30 Martin Hunt <hunt@redhat.com> - - * runtime.h (STP_USE_FRAME_POINTER): Define when frame pointers - are available in the kernel and can be used. - * stack-arm.c: Use STP_USE_FRAME_POINTER. - * stack-i386.c: Ditto. - * unwind/i386.h: Ditto. - * unwind/x86_64.h: Ditto. - -2008-04-04 David Smith <dsmith@redhat.com> - - PR 5961 (partial) - * task_finder.c: New file. - -2008-03-28 Martin Hunt <hunt@redhat.com> - - * copy.c (_stp_read_address): New function. Safely read - kernel or userspace. - -2008-03-26 Martin Hunt <hunt@redhat.com> - Fixes to get i386 working. - * unwind.c (unwind): Fix types in debug print. - * stack-i386.c (_stp_stack_print_fallback): New function. - (__stp_stack_print): Call _stp_stack_print_fallback() if unwinder - appears to fail. - -2008-03-25 Martin Hunt <hunt@redhat.com> - - * unwind.c (unwind): Return a positive number to indicate - that unwinding is done. - -2008-04-01 Frank Ch. Eigler <fche@elastic.org> - - * lket/*: Belatedly remove retired LKET code. - -2008-03-17 Eugene Teo <eteo@redhat.com> - - PR 5947 - * autoconf-tsc-khz.c: Remove "&& defined(__i386__)" to make the test - more pessimistic. - -2008-03-14 Masami Hiramatsu <mhiramat@redhat.com> - - PR 3542 - * autoconf-unregister-kprobes.c : New file. - -2008-03-10 Dave Brolley <brolley@redhat.com> - - PR5189 - * vsprintf.c (_stp_vsnprintf): Arguments for dynamic width and precision - are of type 'int' again. - * loc2c-runtime.h (deref_string): Copy the data only if dst is not NULL. - (deref_buffer): New macro. - -2008-02-27 Martin Hunt <hunt@redhat.com> - - * sym.h (_stp_module): Add text_size, lock, and unwind data - pointer. - * sym.c (_stp_find_module_by_addr): New function. - (_stp_kallsyms_lookup): Call _stp_find_module_by_addr(). - (_stp_get_unwind_info): New. - - * runtime.h: Move debug macros to debug.h. Include it. - * debug.h: New file. - * map.c: Update debug calls. - * map-gen.c: Update debug calls. - * pmap-gen.c: Update debug calls. - - * mempool.c: New file. - -2008-02-27 Dave Brolley <brolley@redhat.com> - - PR5189 - * vsprintf.c (_stp_vsnprintf): Extract arguments of type int64_t for - dynamic width and precision. Implement width and precision correctly for - the %b format specifier. Implement the %m specifier. - -2008-02-06 Masami Hiramatsu <mhiramat@redhat.com> - - * stack-ia64.c (__stp_show_stack_sym): Skip printing symbol if (ip == - REG_IP(regs)). - -2008-01-29 Martin Hunt <hunt@redhat.com> - - * io.c (_stp_vlog): Use get_cpu() instead - of smp_processor_id() because this function can get - called with interrupts enabled. - -2008-01-29 Martin Hunt <hunt@redhat.com> - - * alloc.c (struct _stp_malloc_type): Remove - redundant field. - -2008-01-28 Martin Hunt <hunt@redhat.com> - - * alloc.c: Use DEFINE_SPINLOCK. - * counter.c: Ditto. - * pmap-gen.c: Ditto. - * print_new.c: Ditto. - * stat.c: Ditto. - -2008-01-27 Frank Ch. Eigler <fche@elastic.org> - - * stack-i386.c (__stp_stack_print): Correct #elif->#else typo. - -2008-01-14 Martin Hunt <hunt@redhat.com> - - * print.c (_stp_print_kernel_info): New function. - (all): Call stp memory functions. - - * alloc.c: Rewrite to track allocated memory if - DEBUG_MEM is defined. - * counter.c, map.c, stat.c, time.c: Call stp - memory functions. - -2007-11-14 Zhaolei <zhaolei@cn.fujitsu.com> - - From Cai Fei <caifei@cn.fujitsu.com> - * regs-ia64.c (ia64_fetch_register): Fix the bug of fetching - register 12 on IA64. - -2007-11-12 Martin Hunt <hunt@redhat.com> - - * print.c (_stp_print): Rewrite to eliminate the strlen() - call and save a bit of time. - -2007-11-09 Masami Hiramatsu <mhiramat@redhat.com> - - PR3858 - * print.c: Add -DRELAY_HOST=<hostname> and -DRELAY_GUEST=<hostname> - options support. - (_stp_print_flush): Disable irqs if -DRELAY_* option is specified. - * print_old.c: Export stp_print_flush to other modules if the - -DRELAY_HOST option is specified. - * print_new.c: Ditto. - -2007-10-25 Mike Mason <mmlnx@us.ibm.com> - - * stat-common.c: Allow histogram bucket elision to be turned off - with -DHIST_ELISION=<negative #>. Also cleaned up looping code - to prevent unnecessary interation over non-existent buckets. - -2007-10-17 Masami Hiramatsu <mhiramat@redhat.com> - - * autoconf-tsc-khz.c: Not to be compiled if the kernel version is - younger than 2.6.23 on i386. - -2007-10-17 Martin Hunt <hunt@redhat.com> - PR5000 - * vsprintf.c: Remove _stp_endian. - -2007-10-15 Masami Hiramatsu <mhiramat@redhat.com> - - * autoconf-tsc-khz.c: Fix a bug to be configured correctly. - -2007-10-09 Martin Hunt <hunt@redhat.com> - - * user/*: Removed obsolete userspace test files. - -2007-10-02 Frank Ch. Eigler <fche@elastic.org> - - PR 5041 - From <michael.gruener@linux.vnet.ibm.com>: - * loc2c-runtime.h (store_register): Add value as macro parameter where - missing. - -2007-09-24 Masami Hiramatsu <mhiramat@redhat.com> - - PR 3916 - * time.c (stp_time_t): Rename cpufreq to freq. - (__stp_get_freq): Rename from __stp_estimate_cpufreq. Use tsc_khz or - cpu_khz if it is available. Use itc_freq on ia64. - (__stp_ktime_get_real_ts): New function to get current kernel time. - (__stp_time_timer_callback): Call __stp_ktime_get_real_ts to get - base time. - (__stp_init_time): Ditto. - (__stp_constant_freq): New function to check the processor has - constant frequency timestamp counter. - (_stp_kill_time): Don't use the cpufreq notifier if the processor has - constant frequency timestamp counter. - (_stp_init_time): Ditto. - * autoconf-ktime-get-real.c : New file. - * autoconf-constant-tsc.c: Ditto. - * autoconf-tsc-khz.c: Ditto. - -2007-09-22 Frank Ch. Eigler <fche@elastic.org> - - PR 5057. - * stat-common.c (_stp_stat_print_histogram): Elide consecutive - zero rows beyond 2*STAT_ELISION+1. - (STAT_ELISION): New parameter, default 2. - -2007-09-21 Martin Hunt <hunt@redhat.com> - PR 5024 - * stat-common.c (_stp_stat_print_histogram): Change - overflow and underflow handling for linear histograms. - (__stp_stat_add): For linear histograms, use under - and over buckets. - -2007-09-19 Martin Hunt <hunt@redhat.com> - PR 5042 - * procfs.c (_stp_rmdir_proc_module): Warn if removal of - /proc/systemtap/module is deferred. Do not defer removal of - /proc/systemtap. - (_stp_mkdir_proc_module): Call path_release(). Set ownership of - /proc/systemtap/module to force deletion to be deferred. - (_stp_create_procfs): Set owner of all path components. - -2007-09-14 Martin Hunt <hunt@redhat.com> - - * procfs.c (_stp_create_procfs): Be sure that directories in the path - are really directories and not files. - -2007-09-13 David Smith <dsmith@redhat.com> - - * procfs.c (_stp_procfs_dir_lookup): Added 'const' qualifier to - 'dir' parameter. - (_stp_create_procfs): Added 'const' qualifier to 'path' - parameter. Removed debug prints. - (_stp_close_procfs): Removed debug prints. - -2007-09-12 Martin Hunt <hunt@redhat.com> - - * map-stat.c (_stp_map_new_hstat_log): Set buckets to - HIST_LOG_BUCKETS. - (_stp_pmap_new_hstat_log): Ditto. - (_stp_map_new_hstat_linear): Call _stp_stat_calc_buckets(). - (_stp_pmap_new_hstat_linear): Ditto. - - * stat.h (STP_MAX_BUCKETS): Define.. - (HIST_LOG_BUCKETS): Define. - - * stat.c (_stp_stat_init): Call _stp_stat_calc_buckets(). - - * stat-common.c (_stp_stat_calc_buckets): New function. Common - bucket calculation and error reporting code. - (_stp_bucket_to_val): New function. - (_stp_val_to_bucket): Renamed and now handles negative numbers. - (_stp_stat_print_histogram): Handle negative values in log histograms. - (__stp_stat_add): Cleanup.. - - * map-gen.c (_stp_map_new): Remove buckets param for HIST_LOG. - * pmap-gen.c (_stp_pmap_new): Ditto. - -2007-09-10 Martin Hunt <hunt@redhat.com> - - * procfs.c: New file. Common runtime procfs functions. - -2007-08-20 Martin Hunt <hunt@redhat.com> - - * stack.c (_stp_kta): Removed. - -2007-08-20 Masami Hiramatsu <mhiramat@redhat.com> - - * stack-x86_64.c: Fix backtrace to use the value of stack register - instead of its address. - -2007-08-17 Martin Hunt <hunt@redhat.com> - - * bench2/bench.rb: Send HUP to stapio, instead of staprun. - -2007-08-10 Josh Stone <joshua.i.stone@intel.com> - - PR 4593 - * loc2c-runtime.h (deref, store_deref): Set an error message with - the pointer value and name into last_error, since it's hard to - determine the details once you've already jumped to deref_fault. - -2007-07-09 Martin Hunt <hunt@redhat.com> - - * sym.h (STP_MAX_MODULES): Raise limit to 256. - -2007-07-06 Martin Hunt <hunt@redhat.com> - - * stat-common.c (__stp_stat_add): Fix calculations - for linear histogram buckets. - - * stat.c (_stp_stat_init): Check for interval too - small. - -2007-07-05 Eugene Teo <eteo@redhat.com> - - * regs.c (_stp_print_regs): #ifdef CONFIG_CPU_CP15 instead. - -2007-07-02 Martin Hunt <hunt@redhat.com> - - * sym.c (_stp_kallsyms_lookup): Improve heuristic - for determining when a pointer is in a function. - (_stp_func_print): New function. - * stack-i386.c, stack-x86_64.c: Remove obsolete - unwind code. Use _stp_func_print(). - -2007-06-22 Frank Ch. Eigler <fche@elastic.org> - - * string.c (_stp_text_str): Fix handling of embedded - " and \ characters. - -2007-06-21 David Smith <dsmith@redhat.com> - - * lket/b2a/Makefile.in: Regenerated with automake 1.10. - -2007-06-15 Martin Hunt <hunt@redhat.com> - From Quentin Barnes. - * loc2c-runtime.h: Latest arm marcos. - * stack-arm.c (__stp_stack_print): Add a cast. - * regs.c (_stp_ret_addr): Define for arm. - -2007-06-07 Martin Hunt <hunt@redhat.com> - PR 4075 fix from Ananth Mavinakayanahalli - * string.h (_stp_get_user): Define. - * string.c (_stp_text_str): Use _stp_get_user(). - -2007-05-30 Martin Hunt <hunt@redhat.com> - - Patch from Quentin Barnes. - * arith.c: Add arm support for 64-bit division. - * copy.c: Enable arm support. - * loc2c-runtime.h: Ditto. - * regs.[ch]: Ditto. - * stack.c: Include stack-arm.c. - * stack-arm.c: New file. - * time.c (_stp_gettimeofday_ns): hack - for arm. See PR 4569. - -2007-05-29 Frank Ch. Eigler <fche@elastic.org> - - PR 4458 - * print_new.c (_stp_print_flush): Use interrupt-disabling - spinlock variants. - -2007-05-29 Frank Ch. Eigler <fche@redhat.com> - - PR 2224 - * map.h (NEED_MAP_LOCKS): New config macro, defaults to 0. - (MAP_GET_CPU, MAP_PUT_CPU): Wrappers, default to ~no-op. - * map.c (_stp_pmap_clear,agg): Use them. - * pmap-gen.c (_stp_pmap_new,set,add,get_cpu,get,del): Ditto. - -2007-05-15 Martin Hunt <hunt@redhat.com> - - * vsprintf.c: Add comment about %p. - * regs.c, stack*.c, sym.c: Fix %p calls. - -2007-04-27 Martin Hunt <hunt@redhat.com> - - * runtime.h: Improve check for debugfs in kernel. - -2007-04-27 Frank Ch. Eigler <fche@elastic.org> - - * autoconf-inode-private.c: New file from hunt. - -2007-04-04 Sébastien Dugué <sebastien.dugue@bull.net> - - * runtime/lket/b2a/lket_b2a.c: Fix percpu files parsing - for percpu_header transport changes. - -2007-04-05 Martin Hunt <hunt@redhat.com> - - * bench2/var_bench, var.st, const.st: New test. - -2007-04-05 Martin Hunt <hunt@redhat.com> - - * bench2/bench.rb (Stapbench::run): Check result code - of "killall staprun". If it is nonzero, something happened to - staprun. Print an error. - (Stapbench::load): Define STP_NO_OVERLOAD. - * bench2/README: Update. - * bench2/print_bench: New set of tests. - -2007-03-22 Frank Ch. Eigler <fche@elastic.org> - - * sym.c (_stp_module_relocate): Tolerate empty section string. - -2007-03-21 Martin Hunt <hunt@redhat.com> - - - * sym.h: Declare _stp_module_relocate. - * sym.c (_stp_module_relocate): Add comments, reformat, add - a way for "last" cached values to be cleared when modules - are removed. - (_stp_symbol_print): Simplify and remove static buffer. - (_stp_symbol_snprint): Ditto. - -2007-03-21 Martin Hunt <hunt@redhat.com> - - * map.c (_stp_map_init): Fix signed vs unsigned comparison warning. - -2007-03-20 Frank Ch. Eigler <fche@elastic.org> - - PR 4224. - * sym.c (_stp_module_relocate): Support kernel relocations. - -2007-03-19 Frank Ch. Eigler <fche@elastic.org> - - * autoconf-hrtimer-rel.c: New file. - -2007-03-18 Martin Hunt <hunt@redhat.com> - - * stack.c, string.c, sym.c, transport/symbols.c: - Fix some signed vs unsigned comparison warnings. - -2007-03-14 Martin Hunt <hunt@redhat.com> - * stpd: Remove directory. - * relayfs: Remove directory. - -2007-03-14 Martin Hunt <hunt@redhat.com> - * bench2/bench.rb: Updated to work with new transport - and new itest.c. - * bench2/Makefile: Updated for new itest.c - * bench2/itest.c: Rewritten to use multiple threads - and automatically divide the workload among the threads. - - * print.c (_stp_print_flush): Move to print_new.c and - print_old.c. - * print_new.c: New file containing _stp_print_flush() - for the new transport. - * print_old.c: Ditto for old transport. - - * runtime.h (STP_OLD_TRANSPORT): Define - (errk): Define. - (MAXSTRINGLEN): Define if not already defined. - - * io.c (_stp_vlog): Use _stp_ctl_write(). - -2007-03-12 Frank Ch. Eigler <fche@redhat.com> - - PR 4179. - Based on patch from Vasily Averin <vvs@sw.ru>: - * time.c (_stp_init_time): Recover from partial failures. - -2007-03-01 David Wilder <dwilder@us.ibm.com> - - * loc2c-runtime.h: rewrote s390x version of __stp_put_asm - and __stp_put_asm to do single byte writes. - -2007-02-27 David Wilder <dwilder@us.ibm.com> - - * loc2c-runtime.h: Added defines for EX_TABLE needed by older - s390 kernels that do not already have it defined. - -2007-02-07 Martin Hunt <hunt@redhat.com> - - * stack-ppc64.c (__stp_stack_print): Remove an old - reference to the string length and instead limit backtraces - to MAXBACKTRACE. - * stack.c: Define MAXBACKTRACE - -2007-02-06 Josh Stone <joshua.i.stone@intel.com> - - * loc2c-runtime.h (kread): Let it work with const types. - -2007-01-31 Martin Hunt <hunt@redhat.com> - - * 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. - - -2007-01-30 Martin Hunt <hunt@redhat.com> - - * 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 >. - -2007-01-30 Martin Hunt <hunt@redhat.com> - - * 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(). - -2007-01-29 Martin Hunt <hunt@redhat.com> - - * alloc.c (_stp_kmalloc): New function. Call kmalloc - with the correct flags and track usage. - (_stp_kzalloc): Ditto. - * map.c: Use new alloc calls. - * print.c: Ditto. - * stat.c: Ditto. - * time.c: Ditto. - -2007-01-25 Roland McGrath <roland@redhat.com> - - * loc2c-runtime.h (store_deref): Use "Zr" constraint for 64-bit case. - -2007-01-22 Josh Stone <joshua.i.stone@intel.com> - - * loc2c-runtime.h (kread, kwrite): Tweaks to work better with - reading and writing pointer values. - -2007-01-22 Martin Hunt <hunt@redhat.com> - - * map-gen.c (_stp_map_exists): New. Check for membership only. - -2007-01-19 Josh Stone <joshua.i.stone@intel.com> - - PR 3079 - * 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. - -2007-01-10 Martin Hunt <hunt@redhat.com> - - 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. - -2006-12-20 Martin Hunt <hunt@redhat.com> - - * runtime.h: Include mm.h. - -2006-12-20 Li Guanglei <guanglei@cn.ibm.com> - - * runtime/lket/b2a/lket_b2a.c: bugfix for NULL appname when - search appNameTree. - -2006-12-18 David Smith <dsmith@redhat.com> - - * 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. - -2006-12-18 Frank Ch. Eigler <fche@elastic.org> - - PR 3079 - * loc2c-runtime.h (deref, store_deref): Fork x86 and x86-64 - variants. Remove dysfunctional 64-bit ops from x86. - -2006-12-15 Frank Ch. Eigler <fche@elastic.org> - - * print.c (_stp_print_flush): Add a likely() marker to the hot path. - -2006-12-13 Frank Ch. Eigler <fche@elastic.org> - - * regs.h (s390x REG_IP): Parenthesize for warning-free builds. - -2006-12-08 Josh Stone <joshua.i.stone@intel.com> - - * 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. - -2006-12-06 Josh Stone <joshua.i.stone@intel.com> - - * 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. - -2006-12-04 Martin Hunt <hunt@redhat.com> - - * bench2/bench.rb: Fixes for the latest runtime - changes. - -2006-11-21 Li Guanglei <guanglei@cn.ibm.com> - - * runtime/lket/b2a/lket_b2a.[ch]: add b2a_error() and change - the error return codes. - -2006-11-19 Li Guanglei <guanglei@cn.ibm.com> - - * runtime/lket/b2a/lket_b2a.[ch]: bugfix for #3536 - -2006-11-15 Martin Hunt <hunt@redhat.com> - - * alloc.c (STP_ALLOC_FLAGS): Define. - Cleanup ifdefs. - * map.c: Use STP_ALLOC_FLAGS. - * stat.c: ditto. - -2006-11-10 Li Guanglei <guanglei@cn.ibm.com> - - * transport/procfs.c: bugfix of the obsolete buf_info - and consumed_info. - -2006-11-09 Martin Hunt <hunt@redhat.com> - - * sym.h: Change int to int32_t. - -2006-11-09 Li Guanglei <guanglei@cn.ibm.com> - - * runtime/lket/b2a/lket_b2a.[ch]: add options to control - the output data fields of lket.out - -2006-11-02 Martin Hunt <hunt@redhat.com> - - * sym.c (_stp_module_relocate): New function. Needed by the - translator to relocate module symbols. - (_stp_kallsyms_lookup_name): Rewrite to use new symbol structs. - (_stp_kallsyms_lookup): Ditto. - - * sym.h: Declare the structures and arrays that contain all - the symbol and module information. - - * io.c (_stp_vlog, _stp_dbug): Make first parameter const. - * runtime.h: Update prototype for _stp_dbug. - -2006-10-27 Thang Nguyen <thang.p.nguyen@intel.com> - - * runtime/regs.c: patch from Bibo Mao for fixing the return - value on IA64 (bz #3404). - -2006-10-24 Li Guanglei <guanglei@cn.ibm.com> - - * runtime/lket/b2a/lket_b2a.[ch]: be sync with LKET hookid - rearrangement. - -2006-10-23 Li Guanglei <guanglei@cn.ibm.com> - - * runtime/lket/b2a/lket_b2a.c: bugfix of event description - data insert. - -2006-10-12 Martin Hunt <hunt@redhat.com> - - * stack-ppc64.c (__stp_stack_sprint): Declare sp before _sp. - -2006-10-12 Martin Hunt <hunt@redhat.com> - - * 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. - -2006-10-10 Frank Ch. Eigler <fche@elastic.org> - - * runtime/lket/b2a/lket_b2a.c: Add several missing #ifdef HAS_MYSQL. - -2006-10-10 Li Guanglei <guanglei@cn.ibm.com> - - * runtime/lket/b2a/lket_b2a.c, runtime/lket/b2a/lket_b2a.h: - clean up the unused database tables and destory GTree on exit. - -2006-10-10 Li Guanglei <guanglei@cn.ibm.com> - - * runtime/lket/b2a/Makefile.am: add the checking and optional - compiling for mysql client library - * runtime/lket/b2a/Makefile.in: regenerated - * runtime/lket/b2a/lket_b2a.c, runtime/lket/b2a/lket_b2a.h: - Adding the support of automatically database creation and - dumping lket trace into mysql database - -2006-10-09 Josh Stone <joshua.i.stone@intel.com> - - 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. - -2006-09-27 Martin Hunt <hunt@redhat.com> - - * 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. - -2006-09-26 David Smith <dsmith@redhat.com> - - * README: Changed 'stpd' references to 'staprun'. - * README.doc: Ditto. - * TODO: Ditto. - * io.c: Ditto. - * print.c: Ditto. - * runtime.h: Ditto. - * bench2/bench.rb: Ditto. - -2006-09-26 Martin Hunt <hunt@redhat.com> - - * 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. - -2006-09-26 Martin Hunt <hunt@redhat.com> - - * io.c (_stp_vlog): Remove ifdef for STP_RELAYFS. Relayfs now - behaves the same as procfs. - -2006-09-22 Martin Hunt <hunt@redhat.com> - - * print.c: Replace STP_PRINT_BUF_LEN with STP_BUFFER_SIZE. - * string.c: Ditto. - -2006-09-21 Martin Hunt <hunt@redhat.com> - - 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. - -2006-09-20 Josh Stone <joshua.i.stone@intel.com> - - PR 3233 - * 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. - - * lket/b2a/lket_b2a.c (main): Correct arguments to fseek. - (dump_data): Work around a spurious compiler warning. - -2006-09-19 Li Guanglei <guanglei@cn.ibm.com> - - * 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. - -2006-09-18 Josh Stone <joshua.i.stone@intel.com> - - PR 3220 - From Eugeniy Meshcheryakov <eugen@debian.org>: - * lket/b2a/lket_b2a.c: Check that appNameTree exists before destroying. - -2006-09-18 Martin Hunt <hunt@redhat.com> - - * bench2/bench.rb: Remove the deprecated "-m" option - to stpd. Also, don't use merge mode for relayfs. - * bench2/run_binary_print: New test. Compare various ways of - printing binary data. - -2006-09-18 Martin Hunt <hunt@redhat.com> - - * print.c (_stp_print_flush): Rewrite so one version works for - relayfs or procfs. Use proper per-cpu functions. - (_stp_reserve_bytes): New function. Reserve bytes in the output buffer. - (_stp_print_binary): New function. Write a variable number of - 64-bit values directly into the output buffer. - - * string.c (_stp_sprintf): Rewrite using new per-cpu buffers. - (_stp_vsprintf): Ditto. - (_stp_string_cat_cstr): Ditto. - (_stp_string_cat_char): Ditto. - - * runtime.h: Set defaults for MAXTRYLOCK and TRYLOCKDELAY to make - runtime tests in bench2 happy. - -2006-08-29 Li Guanglei <guanglei@cn.ibm.com> - - From Gui Jian <guijian@cn.ibm.com> - * lket/b2a/lket_b2a.c, lket/b2a/lket_b2a.h: - add the support to get_cycles() and sched_clock() timing - mechanism for LKET. - -2006-08-14 Will Cohen <wcohen@redhat.com> - - PR 3037 - * string.c: - * print.c: Remove includes for <linux/config.h>. - -2006-08-11 David Smith <dsmith@redhat.com> - - * lket/b2a/.cvsignore: Added file to let cvs ignore generated - files. - -2006-07-21 Martin Hunt <hunt@redhat.com> - - * runtime.h: Include compat.h. - -2006-07-20 Martin Hunt <hunt@redhat.com> - - * vsprintf.c (_stp_vsnprintf): %p format fixes. - -2006-07-14 Josh Stone <joshua.i.stone@intel.com> - - PR 2922 - * time.c (_stp_init_time): call cpufreq_get for each cpu from - a non-atomic context (module init time). - * time.c (__stp_init_time): remove call to cpufreq_get from IPI. - - * time.c (__stp_time_timer_callback): disable IRQ's to avoid - perturbations in measurements. - * time.c (_stp_gettimeofday_us): disable preemption to avoid CPU - swaps while we're computing the time. - -2006-07-12 Martin Hunt <hunt@redhat.com> - - * runtime.h (for_each_cpu): Define for new kernels - which no longer define it. - -2006-07-11 Martin Hunt <hunt@redhat.com> - - * string.c (_stp_text_str): Use __get_user(). - -2006-07-11 Martin Hunt <hunt@redhat.com> - - * string.c (_stp_text_str): Add a parameter to support - userspace strings too. - * string.h: (_stp_text_str): Fix proto. - -2006-07-11 Li Guanglei <guanglei@cn.ibm.com> - - * lket/b2a/lket_b2a.c: modified to be sync with - the new addevent.process event hooks - -2006-06-29 Li Guanglei <guanglei@cn.ibm.com> - - * lket/b2a/lket_b2a.c, lket/b2a/lket_b2a.h: modified to be - sync with new _lket_trace() - -2006-06-27 Roland McGrath <roland@redhat.com> - - * loc2c-runtime.h: Add some comments. - -2006-06-23 Josh Stone <joshua.i.stone@intel.com> - - * time.c: Do cpufreq notification only if CONFIG_CPU_FREQ defined. - -2006-06-21 Josh Stone <joshua.i.stone@intel.com> - - PR 2525 - * time.c: Time-estimation with minimal dependency on xtime. - -2006-06-16 Roland McGrath <roland@redhat.com> - - * lket/b2a/Makefile.in: Regenerated with automake-1.9.6-2. - -2006-06-09 Li Guanglei <guanglei@cn.ibm.com> - - * lket/b2a/lket_b2a.c, lket/b2a/lket_b2a.h: Rewrite - according to the latest LKET's tapsets. Make it able - to read the metainfo wrote by tapsets. - -2006-06-02 Li Guanglei <guanglei@cn.ibm.com> - - * lket/b2a/lket_b2a.c: eliminate some compile warnings - -2006-06-01 Li Guanglei <guanglei@cn.ibm.com> - - * lket/b2a/lket_b2a.h, lket/b2a/lket_b2a.c: make it able to - read user added trace data and backtrace - -2006-05-30 Martin Hunt <hunt@redhat.com> - - * string.c (_stp_text_str): New function. - * string.h (_stp_text_str): Declare. - -2006-05-25 Martin Hunt <hunt@redhat.com> - - * vsprintf.c (_stp_vsnprintf): Change %p to work like - libc and automatically insert "0x" before the pointer. - -2006-05-24 Josh Stone <joshua.i.stone@intel.com> - - PR 2677 - * sym.c (_stp_symbol_sprint_basic): New function that returns - just the symbol name, and doesn't bother with String. - -2006-05-24 Li Guanglei <guanglei@cn.ibm.com> - - * lket/b2a/Makefile.am, lket/b2a/Makefile.in, - lket/b2a/README, lket/b2a/lket_b2a.c, - lket/b2a/lket_b2a.h: a binary to ascii converter used - to convert LKET's default binary trace data. - -2006-05-09 Li Guanglei <guanglei@cn.ibm.com> - - PR 2647 - Patch given by Gui Jian <guij@cn.ibm.com> - * vsprintf.c: %0s support to print null-terminated string - -2006-05-03 Josh Stone <joshua.i.stone@intel.com> - - * loc2c-runtime.h (deref_string): resolved gcc "warning: - assignment makes integer from pointer without a cast" when - using a pointer as the source address. - -2006-04-28 Martin Hunt <hunt@redhat.com> - - * vsprintf.c (_stp_vsnprintf): Fix argument size for %p. - -2006-04-17 Martin Hunt <hunt@redhat.com> - - * vsprintf.c (_stp_vsnprintf): Fix endian - before writing binary. - (_stp_endian): New variable to control endianess. - -2006-04-11 Tom Zanussi <zanussi@us.ibm.com> - - * print.c (_stp_print_flush): Change TIMESTAMP_SIZE to - STP_TIMESTAMP_SIZE to avoid conflicts with Suse kernels. - -2006-04-10 Martin Hunt <hunt@redhat.com> - - * string.c (_stp_string_cat_cstr): No need to copy - terminating 0. - - * vsprintf.c (_stp_snprintf): New function. - - * stat-common.c (_stp_stat_print_histogram): Write a - newline at the end of the histogram. - -2006-04-09 Martin Hunt <hunt@redhat.com> - - * print.c (_stp_print_flush): Send 'len" bytes - instead of 'len+1', which included terminating 0. - - * string.c (_stp_sprintf): Call _stp_vsnprintf() - instead of vsnprintf(). - (_stp_vsprintf): Ditto. - - * vsprintf.c: New file. - -2006-04-05 Will Cohen <wcohen@redhat.com> - - * string.h (__stp_stdout): Correct initialization. - -2006-03-30 Martin Hunt <hunt@redhat.com> - - * string.c (_stp_string_cat_cstr): Use memcpy() instead of strncpy(). - -2006-03-26 Martin Hunt <hunt@redhat.com> - - * bench2/bench.rb (Bench::run): Instead of loading the module - once and running against different numbers of threads, load - and unload the module each time. Then keep track of failures - per thread. Also use the new itest to keep the tests the same - size regardless of the number of threads. - (Bench::initialize): Make itest if needed. - (Bench::load, Stapbench::load): Increase buffer size to 8MB. - - * bench2/itest.c: Change arg to be the number of threads - instead of the number of millions of calls to make. - This makes it easy to divide the work among multiple threads - without making the test run many times longer. - -2006-03-09 Martin Hunt <hunt@redhat.com> - - * bench2: New directory containing a benchmark framework. - -2006-02-10 Martin Hunt <hunt@redhat.com> - - * copy.c (_stp_copy_from_user): Revert previous incorrect change. - -2006-02-09 Martin Hunt <hunt@redhat.com> - - * copy.c (_stp_copy_from_user): If access fails, - return -1. - -2006-01-25 Martin Hunt <hunt@redhat.com> - - * stat.c (_stp_stat_init): Use _stp_alloc_percpu(). - (_stp_stat_del): New function. - - * alloc.c (_stp_alloc_percpu): New function. - (_stp_free_percpu): New function. - -2006-01-19 Martin Hunt <hunt@redhat.com> - - * pmap-gen.c (_stp_pmap_get): Fix bug where old data - from agg map could be returned after element was deleted. - -2006-01-16 Josh Stone <joshua.i.stone@intel.com> - - * stat.c (_stp_stat_clear): add a function that just - clears a Stat, so we can use delete in the translator. - -2006-01-16 Martin Hunt <hunt@redhat.com> - - * map.c (_stp_pmap_agg): Return NULL when aggregation - fails. - -2006-01-15 Frank Ch. Eigler <fche@elastic.org> - - * io.c (_stp_exit): Revert. - -2006-01-10 Martin Hunt <hunt@redhat.com> - - * io.c (_stp_exit): set STAP_SESSION_STOPPING. - -2006-01-03 Frank Ch. Eigler <fche@redhat.com> - - * io.c (_stp_softerror): New function. - -2005-12-14 Martin Hunt <hunt@redhat.com> - - * pmap-gen.c (_stp_pmap_new_*): Initialize lock. - (_stp_pmap_set_*): Lock map while in use. - (_stp_pmap_add_*): Lock map while in use. - (_stp_pmap_get_cpu): Ditto. - (_stp_pmap_get): Lock each per-cpu map. - - * map-gen.c: Define and use NULLRET for a NULL return value. - * map.c (_stp_pmap_clear): New function. - (_stp_pmap_agg): Lock each per-cpu map as - it gets aggregated. - -2005-12-13 Martin Hunt <hunt@redhat.com> - - * map.c (_stp_map_sortn): Set a limit of 30 for n. Automatically - call _stp_map_sort() if more is requested. - -2005-12-08 Martin Hunt <hunt@redhat.com> - - * map.c (_new_map_create): Only increment map size if a node - was moved off the free list. - (_stp_map_size): New function. - (_stp_pmap_size): New function. - -2005-12-07 Martin Hunt <hunt@redhat.com> - - PR1923 - * map.h (struct map_root): Remove membuf. - (struct pmap): Define. - (PMAP): Declare. - - * map.c (_stp_map_init): Use kmalloc() to allocate individual - nodes instead of using vmalloc() to allocate one big chunk. - (_stp_map_new): Use kmalloc. - (_stp_pmap_new): Use kmalloc. Return a PMAP. - (__stp_map_del): New function. Free all the nodes in a map. - (_stp_map_del): Call __stp_map_del() then free map struct. - (_stp_pmap_del): Takes a PMAP. Calls __stp_map_del() for - each cpu. - (_stp_pmap_printn_cpu): Change arg to PMAP. - (_stp_pmap_agg): Change arg to PMAP. - (_stp_pmap_get_agg): Change arg to PMAP. - - * map-stat.c (_stp_pmap_new_hstat_linear): Use PMAP - instead of MAP. Fix allocations. - (_stp_pmap_new_hstat_log): Ditto. - - * pmap-gen.c Fix all functions to take or return PMAPS - instead of MAPS. - - * alloc.c: Remove everything except kmalloc_node(). - All runtime code now uses kmalloc() directly. - -2005-11-30 Martin Hunt <hunt@redhat.com> - - * io.c (_stp_exit): To prevent any possible interactions - with the probed function, just set a flag here. - -2005-11-28 Graydon Hoare <graydon@redhat.com> - - * stat-common.c (_stp_stat_print_histogram): Various formatting - corrections and aesthetic tweaks. - (__stp_stat_add): Correction to linear bucket underflow cases. - -2005-11-28 Martin Hunt <hunt@redhat.com> - - * alloc.c (__stp_valloc_percpu): Use same code for up and smp. - (_stp_per_cpu_ptr): New macro. - * user/alloc.c: Ditto. - * map.c: Use _stp_map_cpu_ptr(). - * map-stat.c: Ditto. - * pmap-gen.c: Ditto. - * runtime.h: Include alloc.c - * user/runtime.h: Ditto. - - * map.c (_stp_pmap_del): Use _stp_free_percpu() to - free pmaps. - - * map-stat.c (_stp_pmap_new_hstat_log): Fix typo. Call - _stp_pmap_new() instead of _stp_map_new(). - -2005-11-11 Martin Hunt <hunt@redhat.com> - - * map.h: Removed old API macros and prototypes. - -2005-11-10 Martin Hunt <hunt@redhat.com> - - * pmap-gen.c (_stp_pmap_get()): New function. Aggregates - the per-cpu map nodes into an aggregation map node. - - * map.c (_stp_new_agg): Return a struct map_node *. - (_stp_add_agg): If count is 0 when adding, - just set the stats. - -2005-11-10 Martin Hunt <hunt@redhat.com> - - * map.c: Doc updates. - (_stp_new_agg): - - * pmap-gen.c: Change a bunch of generated function names to - avoid conflicts with maps with the same key and value types. - -2005-11-10 Martin Hunt <hunt@redhat.com> - - * map.c (_stp_cmp): Use _stp_div64(). - -2005-11-09 Martin Hunt <hunt@redhat.com> - - * map.h: Remove HSTAT_LOG and HSTAT_LINEAR. - * map-gen.c: Fix comment. - * pmap-gen.c: Ditto. - -2005-11-09 Martin Hunt <hunt@redhat.com> - - * map.c (_stp_cmp): Patch to sort on stats. - (_stp_map_sort): Ditto. - (_stp_map_sortn): Ditto. - -2005-11-09 Martin Hunt <hunt@redhat.com> - - * map.c: Change order of includes. - -2005-11-09 Martin Hunt <hunt@redhat.com> - - * map.h (struct map_root): Delete fields - used by old API. - - * map.c: Remove old map API functions. - * map-stat.c (_stp_map_add_stat): Delete. - (_stp_pmap_new_hstat_linear): Move here from map.c. - (_stp_pmap_new_hstat_log): Ditto. - - * list.c: Deleted. - * map-keys.c: Deleted. - * map-values.c: Deleted. - * map-int.c: Deleted. - -2005-11-08 Martin Hunt <hunt@redhat.com> - - * alloc.c (__stp_valloc_percpu): Fix call to vmalloc_node. - (vmalloc_node): Remove nonworking code. - -2005-11-08 Martin Hunt <hunt@redhat.com> - - * map.c (_stp_map_init): New function. Extracted from _stp_map_new() - so it can be used in _stp_pmap_new(). - (_stp_map_new): Call _stp_map_init(). - (_stp_pmap_new): New function. - (_stp_pmap_new_hstat_linear): New function. - (_stp_pmap_new_hstat_log): New function. - (_stp_pmap_del): New function. - (_stp_pmap_printn_cpu): New function. - (_stp_pmap_printn): New function. - (_stp_new_agg): New function. - (_stp_add_agg): New function. - (_stp_pmap_agg): New function. - (_new_map_clear_node): New function. - - * map.h (struct map_root): Add Hist struct. Add copy - and cmp function pointers for pmaps. - - * stat.h: Remove Stat struct. Replace with Hist struct - that is limited to only histogram params. - * map-stat.c: Fix up references to histogram params in map_root. - * stat-common.c: Ditto. - * stat.c: Ditto. - - * pmap-gen.c: New file. Implements per-cpu maps. - - * map-gen.c: Minor bug fixes. Use new VAL_IS_ZERO() macro. - - * alloc.c (vmalloc_node): For NUMA, provide a vmalloc that - does node-local allocations. - (_stp_alloc_cpu): A version of _stp_alloc() that does - node-local allocations. - (_stp_valloc): A version of _stp_valloc() that does - node-local allocations. - (__stp_valloc_percpu): New function. Like alloc_percpu() - except uses _stp_valloc(). - (_stp_vfree_percpu): New function. Like free_percpu(). - -2005-11-04 Martin Hunt <hunt@redhat.com> - - * runtime.h: #include <linux/version.h>. - (init_module): Remove old ppc comment. - ifdef _stp_kta so it only gets set for x86 and x86_64. - -2005-10-31 Martin Hunt <hunt@redhat.com> - - * ALL: Cleanup copyrights. - -2005-10-28 Martin Hunt <hunt@redhat.com> - - * map-gen.c (MAP_GET_VAL): Use the _stp_get_*() functions. - (_stp_map_set_*): When setting to "", don't create - node if key not found. - (_stp_map_get_*): Use new MAP_GET_VAL. Return "" when - string lookups not found. - - * map.c (_stp_get_int64): Check args and return - 0 on bad args or wrong type. - (_stp_get_stat): Ditto. - (_stp_key_get_int64): Ditto. - (_stp_get_str): Check args and return - "bad type" on bad args or wrong type. - (_stp_key_get_str): Ditto. - (_new_map_set_str): If setting to "", delete node. - (_new_map_get_*): Delete. Use _stp_get_*(). - - -2005-10-26 Martin Hunt <hunt@redhat.com> - - * map-gen.c (KEY4CPY): Fix typo. - (KEYCPY): Add missing semicolon. - -2005-10-26 Martin Hunt <hunt@redhat.com> - - * map-gen.c: New file. - - * map.c (_new_map_create, _new_map_del_node, _new_map_del_node, - _new_map_set_int64, _new_map_set_str,_new_map_get_int64, - _new_map_get_str, _new_map_get_stat, _new_map_set_stat): - New internal functions for the new API. - - * map-int.c (__stp_map_set_int64): Modify to return an - error code. - * map-stat.c (_stp_map_add_stat): Ditto. - * map-str (_stp_map_set_str): Ditto. - - * Doxyfile: Remove predefines NEED_STRING_VALS, - NEED_STATS, NEED_INT64. - * map-keys.c: Ditto. - * list.c (_stp_list_new): Ditto. Also set map->list. - * map-values.c: Ditto. - -2005-10-19 Martin Hunt <hunt@redhat.com> - - * runtime.h (_stp_kallsyms_lookup_tabled): Only - compile this for systemtap. Runtime-only examples - don't need it. - -2005-10-19 Tom Zanussi <zanussi@us.ibm.com> - - * print.c (_stp_print_flush): Switch to binary TIMESTAMP. - -2005-10-14 Tom Zanussi <zanussi@us.ibm.com> - - PR 1455 - * string.c (_stp_sprintf): Restore overwritten NULL byte. - * print.c: Change STP_PRINT_BUF_LEN to correct size. - -2005-10-06 Frank Ch. Eigler <fche@elastic.org> - - PR 1332. - * sym.h: New file to declare explicit symbol table struct. - * runtime.h (_stp_kallsyms_lookup_tabled): Use it if available. - * sym.c (_stp_symbol_sprint): HAS_LOOKUP mooted. - -2005-09-30 Graydon Hoare <graydon@redhat.com> - - * loc2c-runtime.h (_put_user_asm): Fix bracket-matching. - -2005-09-23 Martin Hunt <hunt@redhat.com> - - * map.c (_stp_map_sortn): Call _stp_map_sort() - when n is 0. - -2005-09-23 Martin Hunt <hunt@redhat.com> - - * map.c (_stp_cmp): New comparison function for sorts. - (_stp_swap): New swap function for bubble sort. - (_stp_map_sortn): New function. - (_stp_map_sort): New function. - (_stp_map_printn): New function. - (_stp_map_print): Convert to a macro. - -2005-09-22 Martin Hunt <hunt@redhat.com> - - * regs.h: PPC64 version from - Ananth N Mavinakayanahalli <ananth@in.ibm.com> - - * runtime.h (init_module): Only initialize _stp_kta and - _stp_kallsyms_lookup on i386 and x86_64. Define HAS_LOOKUP. - - * sym.c (_stp_symbol_sprint): If HAS_LOOKUP is not - defined, just print address in hex. - - * current.c (_stp_ret_addr): Add ppc64 version. - (_stp_sprint_regs): PPC64 version from - Ananth N Mavinakayanahalli <ananth@in.ibm.com> - -2005-09-14 Martin Hunt <hunt@redhat.com> - - * map.c (_stp_map_clear): New function. CLears a map but - does not free it. - - * copy.c (__stp_strncpy_from_user): Add ppc64 support. - (_stp_strncpy_from_user): Call access_ok(). - (_stp_string_from_user): Ditto. - (_stp_copy_from_user): Ditto. - -2005-09-12 Martin Hunt <hunt@redhat.com> - - * io.c (ERR_STRING): Remove ansi codes. - (WARN_STRING): Ditto. - -2005-09-12 Martin Hunt <hunt@redhat.com> - - * arith.c (_stp_div64): Check for division by 0 or -1 first. - This simplifies things and removes the possibility of x86_64 - trying LLONG_MIN/-1 and faulting. - (_stp_mod64): Ditto. - -2005-09-10 Frank Ch. Eigler <fche@elastic.org> - - * arith.c: Add some comments explaining why the last change works. - -2005-09-09 Roland McGrath <roland@redhat.com> - - * loc2c-runtime.h [__powerpc__] (store_register): Add #undef. - -2005-09-09 Martin Hunt <hunt@redhat.com> - - * stat-common.c (_stp_stat_print_valtype): Use _stp_div64(). - * arith.c (_stp_div64): Check error before writing to it. - Remove check against 32-bit LONG_MIN and -1. That only - applies to 64-bit. - (_stp_mod64): Ditto. - -2005-09-08 Martin Hunt <hunt@redhat.com> - - * arith.c (_stp_div64): Check for overflow. - (_stp_mod64): Ditto. - -2005-09-08 Martin Hunt <hunt@redhat.com> - - * arith.c (_stp_div64): For 64-bit cpus, just use native - division. Otherwise call _div64(). - (_stp_mod64): Call _mod64() isf necessary. - (_div64): 64-bit division for 32-bit cpus. - (_mod64): 64-bit modulo for 32-bit cpus. - - * map-values.c (_stp_map_entry_exists): Remove unused var. - -2005-09-01 Martin Hunt <hunt@redhat.com> - - * stack.c (_stp_stack_sprint): Add a verbose arg - to pass along to underlying funcs. - -2005-08-31 Martin Hunt <hunt@redhat.com> - - * runtime.h (init_module): Include full prototype - info in function cast to satisfy stap. - - * sym.c (_stp_kallsyms_lookup): Moved to runtime.h. - * stack.c (_stp_kta): Moved to runtime.h. - * runtime.h (init_module): Initialize _stp_kallsyms_lookup - and _stp_kta. - * probes.c (_stp_lookup_name): Replaced by kallsyms_lookup_name(). - * list.c (_stp_copy_argv_from_user): ifdef this function - NEED_STRING_VALS. - -2005-08-30 Roland McGrath <roland@redhat.com> - - * loc2c-runtime.h (fetch_register, store_register): Rewritten to pass - REGS to dwarf_register_<N> as a macro argument. - [__i386__, __x86_64__]: Update dwarf_register_* macros. - [__i386__] (dwarf_register_4): Define special case for stack pointer. - -2005-08-29 Martin Hunt <hunt@redhat.com> - - * list.c (_stp_copy_argv_from_user): Move to here. - * copy.c (_stp_copy_argv_from_user): Delete. - * runtime.h: Always include copy.h. - -2005-08-25 Roland McGrath <roland@redhat.com> - - * loc2c-runtime.h (deref_string): Rewritten using deref. - -2005-08-24 Roland McGrath <roland@redhat.com> - - * loc2c-runtime.h (deref_string): New macro. - -2005-08-24 Martin Hunt <hunt@redhat.com> - - * io.c (_stp_vlog): Send warnings and errors to STP_OOB_DATA. - -2005-08-23 Martin Hunt <hunt@redhat.com> - - * runtime.h: Add a prototype for _stp_dbug(). - -2005-08-22 Martin Hunt <hunt@redhat.com> - - * runtime.h (kbug): New dbug macros that calls printk. - -2005-08-21 Frank Ch. Eigler <fche@redhat.com> - - * arith.c (*): Adapt to last_error context variable. - -2005-08-19 Frank Ch. Eigler <fche@elastic.org> - - * arith.c (_stp_random_pm): New function. - -2005-08-19 Martin Hunt <hunt@redhat.com> - - * print.c: Change ifdefs to STP_RELAYFS. - * runtime.h: Ditto. - * io.c (_stp_vlog): Call _stp_write instead of - _stp_ctrl_send. - * Makefile: Don't build stp-control. - * README.doc: Update. - * TODO: Update. - -2005-08-12 Graydon Hoare <graydon@redhat.com> - - * map-values.c (_stp_map_entry_exists): New function. - * map.h (_stp_map_entry_exists): Declare it. - -2005-08-12 Frank Ch. Eigler <fche@elastic.org> - - * arith.c: New file to contain arithmetic helper functions. - * builtin_functions.h: Remove, unused. - * runtime.h: Include it. - -2005-08-10 Roland McGrath <roland@redhat.com> - - * loc2c-runtime.h (store_bitfield): Fix argument use. - (store_deref): New macro (three flavors). - -2005-08-03 Martin Hunt <hunt@redhat.com> - - * io.c (_stp_vlog): Revert previous change for now. - * print.c (_stp_print_flush): Ditto. - -2005-08-03 Tom Zanussi <trz@us.ibm.com> - - * io.c (_stp_vlog): Remove call to _stp_print_flush(). - * print.c (_stp_print_flush): _stp_warn() on first - transport failure. - -2005-08-01 Martin Hunt <hunt@redhat.com> - - * io.c (_stp_vlog): Use _stp_pid instead os _stp_tport->pid. - * print.c (_stp_print_flush): Don't need _stp_tport. - *runtime.h (probe_start): Just call _stp_transport_init(). - (probe_exit): Just call _stp_transport_close(). - -2005-07-28 Graydon Hoare <graydon@redhat.com> - - * loc2c-runtime.h: New file from elfutils CVS. - -2005-07-20 Martin Hunt <hunt@redhat.com> - - * io.c (_stp_vlog): Don't count transport failures for - these messages. - -2005-07-19 Martin Hunt <hunt@redhat.com> - - * print.c (_stp_print_flush): Check return value and increment - transport failures. - -2005-07-14 Frank Ch. Eigler <fche@redhat.com> - - * builtin_functions.h (printk): Use explicit format string. - -2005-07-11 Graydon Hoare <graydon@redhat.com> - - * builtin_functions.h: New file. - -2005-07-10 Martin Hunt <hunt@redhat.com> - - * runtime.h (init_module): Fix return value. - -2005-07-08 Martin Hunt <hunt@redhat.com> - - * runtime.h: Move some common pieces of modules into this file. - Includes MODULE_LICENSE, cleanup_module and init_module. - - * print.c (_stp_print_flush): Rename "t" to "_stp_tport". - - * io.c (_stp_vlog): Ditto. - -2005-07-01 Martin Hunt <hunt@redhat.com> - - * string.c (_stp_string_init): CAll stp_error() on bad - init. - - * list.c (_stp_list_clear): Call _stp_warn(). - - * probes.c: Convert all _stp_log() calls to either stp_warn() or - dbug(). - - * print.c: Comment out dbug()s. - - * stat-common.c: Comment out dbug()s. - - * map.c (_stp_map_new): Call _stp_error() on a bad map type. - Comment out dbug()s. - - * map-stat.c (_stp_map_new_hstat_log): Call _stp_warn(). - (_stp_map_new_hstat_linear): Ditto. - - * map-int.c: Comment out dbug()s. - - * map-str.c: Comment out dbug()s. - - * map-keys.c: Use _stp_warn(). Comment out dbug()s. - - * alloc.c (_stp_alloc): Call _stp_error(). - (_stp_valloc): Ditto. - - * io.c (_stp_warn): New function. - (_stp_exit): New function. - (_stp_error): New function. - (_stp_dbug): New function. - - * runtime.h (dbug): Call _stp_dbug() if DEBUG is defined. - -2005-06-29 Martin Hunt <hunt@redhat.com> - - * map-values.c (_stp_map_add_int64): Fix docs. - * map-str.c: Fix some docs - * map.c: Ditto. - * map.doc: Ditto. - - * current.c (_stp_ret_addr_r): New function. - (_stp_probe_addr): New function. - (_stp_probe_addr_r): New function. - -2005-06-27 Martin Hunt <hunt@redhat.com> - - * Doxyfile (PREDEFINED): Added USE_RET_PROBES. - - * probes.c (_stp_register_kretprobes): New function. - (_stp_unregister_kretprobes): New function. - -2005-06-20 Tom Zanussi <zanussi@us.ibm.com> - - * print.c: Made relayfs _stp_print_flush() use sequence counter. - - * runtime.h: Added sequence counter, moved subbuf_size etc to probes. - -2005-06-18 Martin Hunt <hunt@redhat.com> - - * counter.c: New file. Counter aggregations. - - * stat.c: New file. Stat aggregations. - - * stat.h: Header file for stats. - - * map-int.c: New file. Support for int64 values. - - * map-stat.c: New file. Support for stat values. - - * map-str.c: New file. Support for string values. - - * map-values.c: Now just includes the necessary map-*.c files. - - * stat-common.c: New file. Stats stuff common to Stats and maps - containing stats. - - * Doxyfile: Bumped version to 0.6. - - * README: Renamed README.doc and reorganized. - - -2005-06-15 Martin Hunt <hunt@redhat.com> - - * current.c (_stp_ret_addr): Fix computation for i386. - -2005-06-14 Martin Hunt <hunt@redhat.com> - - * README: Removed old docs and replaced with simple build - instructions. - - * Makefile: New file. - - * probes/build: New file. - -2005-06-13 Martin Hunt <hunt@redhat.com> - - * print.c (next_fmt): Move this func to print.c. - -2005-06-02 Martin Hunt <hunt@redhat.com> - - * string.c (_stp_string_cat_cstr): Be sure result is - always terminated. - - * print.c (_stp_vprintf): Fix typo. - -2005-05-31 Martin Hunt <hunt@redhat.com> - - * map.c (_stp_map_print): Now takes a format string instead of a name. - - * map.h (foreach): Update macro. - - * string.c (_stp_string_cat_char): New function. Append a char - to a string. - - * map-keys.c: Don't forget to undef KEYSYM, ALLKEYS and ALLKEYSD. - -2005-05-26 Martin Hunt <hunt@redhat.com> - - * current.c (_stp_sprint_regs): Implement for i386. - - * sym.c (_stp_symbol_sprint): Check name before trying to - print it. - (_stp_symbol_print): Change to macro that calls _stp_symbol_sprint(). - -2005-05-18 Martin Hunt <hunt@redhat.com> - - * print.c: All functions except _stp_print_flush() are - now macros which use _stp_stdout. - - * string.c: Add _stp_stdout support. Data written to - _stp_stdout is automatically flushed when the print buffer - is full. - - * runtime.h: Always include string.c. - -2005-05-17 Martin Hunt <hunt@redhat.com> - - * map.c (needed_space): Use do_div(). - (_stp_map_print_histogram): Ditto. - (_stp_map_print): Ditto. - - * map-values.c (_stp_map_add_int64_stat): Use do_div() when - computing histogram bucket. - - * map-keys.c (_stp_map_key): Fix some warnings on 32-bit machines - by using key_data casts. - -2005-03-30 Martin Hunt <hunt@redhat.com> - - * scbuf.c: Make functions use per-cpu buffers as documented. - _stp_scbuf_clear(): Now returns a pointer to the buffer. diff --git a/runtime/staprun/ChangeLog b/runtime/staprun/ChangeLog deleted file mode 100644 index 4a483b3e..00000000 --- a/runtime/staprun/ChangeLog +++ /dev/null @@ -1,910 +0,0 @@ -2009-01-28 David Smith <dsmith@redhat.com> - - PR9788 - * mainloop.c (cleanup_and_exit): Added workaround for bug 9788 by - fork'ing/exec'ing staprun. - -2008-01-11 Mark Wielaard <mjw@redhat.com> - - * staprun.h: include config.h for dependency. - -2008-12-08 Frank Ch. Eigler <fche@elastic.org> - - PR7062 - * staprun.c (enable_uprobes): Find uprobes.ko based on - SYSTEMTAP_RUNTIME. - (main): Unset SYSTEMTAP_* environment vars if setuid. - -2008-12-03 Roland McGrath <roland@redhat.com> - - PR7063 - * staprun.c (main): Use $SYSTEMTAP_STAPIO instead of hard-coded path. - Remove SYSTEMTAP_STAPRUN and SYSTEMTAP_STAPIO - environment variables when setuid is in effect. - * mainloop.c (cleanup_and_exit): Use $SYSTEMTAP_STAPRUN to re-exec, - not hard-coded path. - -2008-12-03 Frank Ch. Eigler <fche@elastic.org> - - PR6925 - * staprun (init_staprun): If a stap_* module load fails, try - to unload possible leftover, and try again. - -2008-11-28 Frank Ch. Eigler <fche@elastic.org> - - PR4783 - * staprun.c (remove_module): Don't reset with setpriority(0), - as we never set it to high-priority any more anyway. - * mainloop.c (system_cmd): Ditto. - -2008-11-12 Frank Ch. Eigler <fche@elastic.org> - - PR6964 redux. - * mainloop (WORKAROUND_BZ467568): New macro to control - behavior. - (start_cmd, stp_main_loop): Use signal/pause-based - synchronization as a fallback for rhbz 467568. - -2008-10-28 Frank Ch. Eigler <fche@elastic.org> - - PR6964, from Wenji Huang <wenji.huang@oracle.com>: - * mainloop.c (start_cmd, stp_main_loop): Temporarily - disable ptrace calls. - -2008-10-15 Frank Ch. Eigler <fche@elastic.org> - - * mainloop.c (start_cmd): Fix wordexp error handling. - -2008-09-18 David Smith <dsmith@redhat.com> - - PR 6903. - * staprun_funcs.c (check_permissions): Instead of checking the - effective uid, check the real uid for root permissions. - -2008-09-06 Frank Ch. Eigler <fche@elastic.org> - - * mainloop.c (start_cmd): Rewrite to use wordexp/execvp/ptrace. - (stp_main_loop): Use ptrace detach to resume target process. - -2008-09-05 Frank Ch. Eigler <fche@elastic.org> - - * staprun.c (run_as): Teach it to exec too. Update callers. - Always do set[ug]id as dictated. - * staprun.h (do_cap): Remove. Update all callers. - * staprun_funcs.c: Ditto. - * cap.c: Removed. Update headers. - -2008-07-10 Frank Ch. Eigler <fche@elastic.org> - - PR 6736. - * common.c (send_request): Move here ... - * mainloop.c: from here. - * staprun.c (send_relocations): New function to send kernel - and module relocation bases to probe module. - * staprun.h: Corresponding changes. - -2008-06-03 Frank Ch. Eigler <fche@elastic.org> - - PR 6429. - * mainloop.c (stp_main_loop): Remove STP_UNWIND message support. - -2008-05-05 Martin Hunt <hunt@redhat.com> - - * mainloop.c (child_proc): Handle sig_chld - in the proper thread. - (signal_thread): Don't call send_request() - because it isn't thread-safe. - -2008-05-05 Martin Hunt <hunt@redhat.com> - - * mainloop.c (signal_thread): New thread to handle signals - better. - (setup_main_signals): Create signal thread. - -2008-04-30 Masami Hiramatsu <mhiramat@redhat.com> - - PR 6008 - * common.c (parse_args): Increase the limitation of the buffer size - to 4095MB. - * common.c (usage): Ditto. - -2008-04-30 Masami Hiramatsu <mhiramat@redhat.com> - - * stapio.c (main): Fix a typo in a debug message. - * staprun.c (main): Ditto. - -2008-04-24 Frank Ch. Eigler <fche@elastic.org> - - PR 6451. - * common.c (control_channel): Initialize to -1. - * ctl.c (close_ctl_channel): Tolerate fd=0. - -2008-04-22 Martin Hunt <hunt@redhat.com> - - * cap.c (init_cap): Detect capabilities failure and - run with them disabled. - -2008-04-22 Martin Hunt <hunt@redhat.com> - - * mainloop.c (send_request): Move here from common.c - staprun no longer send any messages. - -2008-04-22 hunt <hunt@redhat.com> - - * common.c (usage): Add -d option. - -2008-04-21 Martin Hunt <hunt@redhat.com> - - * staprun.c, stapio.c, staprun.h, mainloop.c, staprun_funcs.c, - ctl.c, common.c: Add "-d" option to have staprun remove - modules. Have staprun exec stapio and then have stapio - exec "staprun -d" to remove the module when finished. - -2008-04-16 Martin Hunt <hunt@redhat.com> - - * ctl.c (init_ctl_channel): Remove unused parameter. - Just opens one channel now. - -2008-02-21 David Smith <dsmith@redhat.com> - - * staprun_funcs.c (check_path): Small security fix. - -2008-01-21 Martin Hunt <hunt@redhat.com> - - * symbols.c (send_module): Simplify and use new send_data() - function to keep longword alignment. - -2008-01-14 Martin Hunt <hunt@redhat.com> - - PR4037 and fixes to better synchronize staprun and stapio. - * symbols.c (send_data): Send header and data seperately, saving - a memcpy and avoiding any alignment issues. - (get_sections): Return -1 on error instead of just exiting - and leaving stapio hanging. Send data in proper format even if kernel - pointers are different size. - (send_module): Return -1 on error instead of just exiting - and leaving stapio hanging. - (do_module): Ditto. - (compar): Removed. - (do_kernel_symbols): Rewrite to be more robust. Return -1 on - error instead of just exiting and leaving stapio hanging. - - * staprun_funcs.c (handle_symbols): Signal stapio if we error out. - Set kernel_ptr_size; - - * staprun.h (kernel_ptr_size): Declare. - - * mainloop.c (stp_main_loop): When ready, send STP_READY. - -2008-01-12 Frank Ch. Eigler <fche@elastic.org> - - PR 5603 horrible hack. - * symbols.c (do_kernel_symbols): Make buf[256] instead of [128]. - -2007-12-11 Martin Hunt <hunt@redhat.com> - PR5368 - * relay_old.c (init_oldrelayfs): Don't start threads - if load_only. - * relay.c (init_relayfs): Ditto. - -2007-11-09 Martin Hunt <hunt@redhat.com> - - * mainloop.c (stp_main_loop): Bump recvbuf to 8196 for - compatibility with old transport. - -2007-10-26 Martin Hunt <hunt@redhat.com> - PR5218 - * stapio.c (main): Set initialized properly when - attached. - -2007-10-12 Martin Hunt <hunt@redhat.com> - Changes to separate the symbols from the command channel. - - * cap.c (init_cap): Add CAP_DAC_OVERRIDE. - * staprun.h: Change init_ctl_channel prototype. - * ctl.c (init_ctl_channel): Modify to open either - a command or symbol channel. Use ".cmd" and ".symbols" - as the new names. - * mainloop.c (init_stapio): Call init_ctl_channel(0); - * staprun.c (cleanup): Call stop_symbol_thread(). - (main): Call start_symbol_thread(). - * staprun_funcs.c (handle_symbols): Make a thread. - (start_symbol_thread): New. - (stop_symbol_thread): New. - -2007-10-11 Frank Ch. Eigler <fche@elastic.org> - - * staprun.c (main): Move checks for init_cap and getuid - from just before command line argument parsing to just after. - -2007-10-09 Martin Hunt <hunt@redhat.com> - - * common.c (set_clexec): New. - * staprun.h: Add prototype for set_clexec. - * relay*.c, ctl.c: Call set_clexec after - file opens. - -2007-09-14 Martin Hunt <hunt@redhat.com> - - * ctl.c (init_ctl_channel): Return 1 if the ctl file opened - was for the old relayfs transport. - - * mainloop.c (init_stapio): Don't call using_old_transport(). - Use the return of init_ctl_channel() instead. - (using_old_transport): Deleted. - -2007-08-31 Martin Hunt <hunt@redhat.com> - - * mainloop.c (start_cmd): Set the priority to - forked processes back to normal. - (system_cmd): Ditto. - -2007-08-21 Martin Hunt <hunt@redhat.com> - - * mainloop.c (start_cmd): Send SIGINT to target_cmd, - not stapio. - -2007-08-20 David Smith <dsmith@redhat.com> - - From Lai Jiangshan <laijs@cn.fujitsu.com> - * common.c (parse_args): Make sure the '-c' and '-x' options can't - be specified together. - -2007-08-15 David Smith <dsmith@redhat.com> - - * staprun.c (main): Quit if effective uid is not root. - -2007-08-15 Martin Hunt <hunt@redhat.com> - PR4736 - * staprun.c (cleanup): Set priority back to normal - before removing module. - -2007-08-15 Martin Hunt <hunt@redhat.com> - - * stap_merge.tcl: New. - -2007-08-14 David Smith <dsmith@redhat.com> - - Merge from setuid-branch. Changes also by Martin Hunt - <hunt@redhat.com>. - - * staprun.c (init_staprun): Drop CAP_SYS_ADMIN when we're done - with it. - (main): Calls parse_modpath instead of path_parse_modname. Just - call parse_modpath with argv[optind]. Let it allocate and set - modpath and modname. If no modulename was given, display usage - and exit. Drop CAP_SYS_NICE when we're done with it. Set - atexit(exit_cleanup) so cleanup always gets called and modules get - removed. Call handle_symbols. - (run_stapio): Set argv[0] to stapio so that it executes as itself - instead of staprun. - (cleanup): Only do cleanups once and only try to remove module - when appropriate. - (exit_cleanup): New. Calls cleanup(). - (mountfs): Sets uid to root before making directory and then - restores uid. - (setup_ctl_channel): Uses DEBUGFS define and improved - error message. - (setup_relayfs): Ditto. - (setup_oldrelayfs): Uses DEBUGFS and RELAYFS defines. - (run_stp_check): Replaced by mountfs(). - (mountfs): New function. Replaces an external script with C code. - (init_staprun): Calls mountfs() instead of run_stp_check(). - - * staprun.h: Renamed path_parse_modname to parse_modpath. Added - MODULE_NAME_LEN define. Added [_][p]err macros. Removed - VERSION_CMD. - - * mainloop.c (cleanup_and_exit): Make sure initialized is 2 - before exiting with code 2. - (stp_main_loop): Set initialized to 2 when STP_TRANSPORT - is received. Call cleanup_and_exit() with proper status. - (start_cmd): exit 1 instead of -1. - (system_cmd): Ditto. - (init_staprun): Renamed init_stapio. - (cleanup_and_exit): Set exit status. - - * cap.c: New file. - * common.c: New file. - * stapio.c: New file. - * staprun_funcs.c: New file. - * Makefile: Removed. - - * symbols.c (get_sections): Move the filter code up so that - uninteresting section names are filtered out before - attempting to open them. - (do_kernel_symbols): Better detect overfow conditions and realloc - new space. - (do_module): After sending all modules, send a null message to - indicate we are finished. - - * ctl.c (init_ctl_channel): When attempting to attach, if the - control channel doesn't exist, print a better error message. - - * relay_old.c (init_oldrelayfs): Errors out if - open_relayfs_files() couldn't open any files. - - PR 4795 - * mainloop.c (send_request): Fixed buffer overflow check. - * staprun.h: Added buffer overflow checking versions of - strcpy/sprintf/snprintf. - * common.c (path_parse_modname): Checks for overflows on - strcpy/sprintf/snprintf. - (read_buffer_info): Ditto. - * ctl.c (init_ctl_channel): Ditto. - * relay.c (init_relayfs): Ditto. - * relay_old.c (open_relayfs_files): Ditto. - (init_oldrelayfs): Ditto. - * staprun_funcs.c (insert_module): Ditto. - (check_path): Ditto. - * symbols.c (get_sections): Ditto. - -2007-07-09 David Smith <dsmith@redhat.com> - - * relay.c (init_relayfs): Fixed a buffer size bug introduced by - the last change. - -2007-07-09 David Smith <dsmith@redhat.com> - - * relay.c (init_relayfs): Make sure buffers are big enough to hold - a full path. - * relay_old.c (init_oldrelayfs): Ditto. - -2007-07-09 David Smith <dsmith@redhat.com> - - * ctl.c (read_buffer_info): Make sure buffer is big enough to hold - a full path. - (init_ctl_channel): Ditto. - -2007-07-02 Martin Hunt <hunt@redhat.com> - - * symbols.c (get_sections): Set data pointer to the lowest address - of any data section. - -2007-06-21 Martin Hunt <hunt@redhat.com> - - * relay.c (init_relayfs): Send message to check for bulkmode. - -2007-06-20 Martin Hunt <hunt@redhat.com> - - * stap_merge.c (main): Add verbose option. Will realloc - buffer if current size is too small. Check return codes - from writes so gcc won't complain. - -2007-06-07 Martin Hunt <hunt@redhat.com> - - * relay_old.c (open_relayfs_files): Add support for - output file names (-o) with bulk (relayfs) mode. - -2007-06-04 Martin Hunt <hunt@redhat.com> - - * mainloop.c (cleanup_and_exit): Disable signals - while exiting. - (fatal_handler): Use return values from write() to - avoid warnings. - -2007-05-24 Martin Hunt <hunt@redhat.com> - - * mainloop.c (cleanup_and_exit): Fix typo. - -2007-05-22 Martin Hunt <hunt@redhat.com> - - * mainloop.c (init_staprun): Change dbug() call. - - * relay.c: Fix ppoll() call and some race conditions involving - signals. - -2007-05-10 Martin Hunt <hunt@redhat.com> - - * relay.c (reader_thread): Set timeout for streaming to - 200ms. - -2007-05-09 Martin Hunt <hunt@redhat.com> - - * relay.c (reader_thread): For bulk mode, set timeout to NULL - so ppoll never times out. - -2007-05-08 Martin Hunt <hunt@redhat.com> - - * relay.c (ppoll): Add a compatibility function for - glibc < 2.4. - -2007-05-08 Martin Hunt <hunt@redhat.com> - Signal handler cleanup. - * mainloop.c (fatal_handler): New. Cleanly handle - unexpected fatal signals. - (setup_main_signals): New. Set signals once mainloop - is entered. - (setup_signals): New. Block certain signals during initialization. - Set handler for fatal signals. - * relay.c (reader_thread): Use ppoll(). Terminate on - SIGUSR2 after reading any remaining data. - (close_relayfs): Remove sleep hack. Send SIGUSR2 to all threads. - - Runtime debug messages. - * staprun.h: Change dbug() to accept a debuglevel and - enable it. - * *.c: Modify dbug() calls. - -2007-05-07 Martin Hunt <hunt@redhat.com> - Patch from David Smith - * mainloop.c (stp_main_loop): Properly handle write() - return value. Fixes build problem with some compilers. - -2007-04-10 Martin Hunt <hunt@redhat.com> - - * relay.c (close_relayfs): Give threads some time to - run before closing. - -2007-04-06 Martin Hunt <hunt@redhat.com> - - * stp_merge.c (main): Remove extra newline in output. - * stap_merge.c: Renamed from stp_merge.c. - * Makefile: Updated. - -2007-04-02 Martin Hunt <hunt@redhat.com> - - * relay_old.c (close_oldrelayfs): If just detaching, call - pthread_cancel. - (open_relayfs_files): Just return 0 if relay_fd[cpu] not opened. - (init_oldrelayfs): Scan percpu files to calculate ncpus. - - * mainloop.c (init_staprun): Call old transport init when necessary. - (cleanup_and_exit): Ignore signals when cleaning up. - - * ctl.c (read_buffer_info): For old transport, need to read transport - parameters. - -2007-03-26 Martin Hunt <hunt@redhat.com> - - * mainloop.c (run_stp_check): Just use system() call. - (init_staprun): Remove _stp_pid module parameter. - (cleanup_and_exit): If closed==2, just exit without removing module. - (driver_poll): Remove. We no longer require stap running. - (_stp_main_loop): Remove call to driver_poll. - - * ctl.c (init_ctl_channel): Don't put files in systemtap_pid, - revert back to systemtap/modulename. - - * relay.c: Revert back to systemtap/modulename paths. - * relay_old.c: Ditto. - - * staprun.c: Add -L and -A args. - -2007-03-20 Martin Hunt <hunt@redhat.com> - - * symbols.c (send_module): If send returns < 0 then - cleanup and exit. - (do_kernel_symbols): Ditto. - -2007-03-18 Martin Hunt <hunt@redhat.com> - * staprun.h (err): Define. - * symbols.c (get_sections): More overflow checking. - -2007-03-18 Martin Hunt <hunt@redhat.com> - * symbols.c (get_sections): Filter out .gnu.linkonce.* sections - except for .gnu.linkonce.this_module. - -2007-03-18 Martin Hunt <hunt@redhat.com> - * staprun.h (VERSION_CMD): Command to use for version check. - Changes to support runtime decision on new or old transport. - * mainloop.c (init_staprun): Check the kernel version at runtime - instead of at compile time. - (cleanup_and_exit): Call the correct relayfs close function. - (stp_main_loop): Call the correct relayfs init function. - * relay.c: Remove ifdef wrapper. File is always compiled and used - if the kernel version is appropriate. - * relay_old.c: Ditto. - -2007-03-14 Martin Hunt <hunt@redhat.com> - - * staprun.c: Renamed from stpd.c. Removed quiet and print_only - options. Added "-x" option as an alias for "-t". Removed "-m" - option. Updated arg processing to leave 4 slots for modoptions[]. - Bump the priority of staprun. - * ctl.c: New. Transport control channel functions. - * relay.c: New. Relayfs control functions for new transport. - * relay_old.c: New. Relayfs control functions for older - versions of relayfs. - * mainloop.c: New. Staprun main loop. - * staprun.h: Renamed from librelay.h. Cleaned up. - - * stap_merge.c: Renamed. Updated for modified save format. - - -2006-12-11 Martin Hunt <hunt@redhat.com> - - * 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. - -2006-11-15 Martin Hunt <hunt@redhat.com> - - * symbols.c (do_kernel_symbols): Add sizeof(long) to sym_base - to preserve 64-bit alignment. - -2006-11-09 Martin Hunt <hunt@redhat.com> - - * 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. - -2006-11-02 Martin Hunt <hunt@redhat.com> - - * symbols.c: New file. Sends symbol and module information to - the systemtap module. - - * librelay.c (stp_main_loop): Add STP_MODULE and STP_SYMBOLS - message handling. - - * librelay.h: Add some new function prototypes. - - * Makefile (CFLAGS): Set to be the same as for building modules. - Added symbols.c to sources. - -2006-10-10 Tom Zanussi <zanussi@us.ibm.com> - - * librelay.c (merge_output): Add check for min when writing - output, otherwise last write happens twice. - -2006-09-26 David Smith <dsmith@redhat.com> - - * Makefile: Changed 'stpd' references to 'staprun'. - * librelay.c: Ditto. - * stpd.c: Ditto. - -2006-09-25 Tom Zanussi <zanussi@us.ibm.com> - - * librelay.c (kill_percpu_threads): Remove printf. - (wait_for_percpu_threads): New. - (process_subbufs): Remove processing, processing_mutex, exit - thread if exiting flag set. - (read_last_buffers): Removed. - (cleanup_and_exit): Remove call to read_last_buffers, wait for - threads to read flushed buffers instead. - (stp_main_loop): Remove mutex init. - -2006-09-22 Tom Zanussi <zanussi@us.ibm.com> - - * librelay.c (init_relayfs): Cleanup if stp_check fails. - -2006-09-19 Tom Zanussi <zanussi@us.ibm.com> - - * librelay.c (init_relayfs): Add debugfs path to relay files and - add new systemtap directory to path. - (init_stp): rmmod module on failure. - (merge_output): Remove debugging printfs left in code. - (close_relay_files): Clear relay_file descriptor after close. - (cleanup_and_exit): Allow cleanup and exit even if there was an - error opening relay files. - (stp_main_loop): Call cleanup_and_exit() if init_relayfs() fails. - -2006-09-18 Martin Hunt <hunt@redhat.com> - - * stpd.c (usage): Remove "-m" option. - (main): Print warning if "-m" is used. - * librelay.c (merge_output): Rewrite to handle - new format that support binary. - (stp_main_loop): Read merge option from the - transport info message. - -2006-09-13 Martin Hunt <hunt@redhat.com> - - * librelay.c (init_relayfs): Exec stp_check and find - relay_filebase. - - * librelay.h (stp_main_loop): Fix declaration of init_stp(). - - * stpd.c (usage): Remove "-r" option. - (main): Don't find stpd_filebase and don't send it to init_stp(). - - -2006-08-02 Tom Zanussi <zanussi@us.ibm.com> - - * stpd.c (main): Use modname rather than driver_pid in - stpd_filebase. - -2006-07-20 Martin Hunt <hunt@redhat.com> - - * librelay.c (stp_main_loop): If module doesn't start, kill any - target command. - -2006-06-23 Tom Zanussi <zanussi@us.ibm.com> - - * librelay.c (cleanup_and_exit): Close relay files even if - not merging. - -2006-06-13 Martin Hunt <hunt@redhat.com> - - * librelay.c (start_cmd): Rewrite using sigwait() to eliminate - a race. - -2006-05-18 Martin Hunt <hunt@redhat.com> - - * librelay.c (stp_main_loop): Set output to always be line - buffered. - -2006-04-08 Martin Hunt <hunt@redhat.com> - - * librelay.c (stp_main_loop): Write with fwrite() instead - of fputs() so we can write binary data. - -2006-04-05 Martin Hunt <hunt@redhat.com> - * librelay.c (merge_output): Remove ANSI codes and write - warning to stderr. - -2006-04-05 Martin Hunt <hunt@redhat.com> - * librelay.c (merge_output): Set the output filename if necessary. - (merge_output): - - * stpd.c (main): Don't reset output_filename just because - relayfs is possible. Move that code to librelay.c. - -2006-04-04 Roland McGrath <roland@redhat.com> - - * stpd.c (main): Cast f_type when comparing; type differs by machine. - -2006-04-04 Tom Zanussi <zanussi@us.ibm.com> - - * stpd.c (main): Check that /mnt/relay is actually relayfs. - -2006-03-15 Tom Zanussi <zanussi@us.ibm.com> - - * stpd.c (main): Add runtime check for relayfs vs relay-on-proc. - -2006-03-06 Martin Hunt <hunt@redhat.com> - - * librelay.c (start_cmd): Set proper uid/gid before execing - command. - (system_cmd): New function. - (cleanup_and_exit): Wait for any child processes to complete. - (stp_main_loop): Recognize STP_SYSTEM message. - - * stpd.c (main): Add support for "-u username". - -2006-02-25 Martin Hunt <hunt@redhat.com> - - * librelay.c (init_stp): Better error handling and cleanup. - -2006-02-23 Frank Ch. Eigler <fche@elastic.org> - - PR 1304 - * stpd.c (mdooptions): New array. - (main): Populate it with leftover arguments. - * librelay.c (init_stp): Pass it to execve(). - -2005-12-08 Frank Ch. Eigler <fche@elastic.org> - - PR 1937 - * stpd.c (main): Support new "-d" option. - (usage): Document it. - * librelay.c (driver_poll): New function to react to death of - driver process. - (stp_main_loop): Call it if "-d PID" given. Treat SIGHUP like others. - -2005-10-19 Tom Zanussi <zanussi@us.ibm.com> - - * librelay.c: Move output_file var to stpd.c. - (stp_main_loop): If the output_file option was specified, - and streaming mode is being used, send output to the file - instead of stdout. If !streaming, send output to the file - instead of probe.out. - * stpd.c (usage): Add comment for -o option. - (main): Add -o option. - -2005-10-19 Tom Zanussi <zanussi@us.ibm.com> - - * librelay.c (merge_output): Switch to binary TIMESTAMP. - * stp_dump.c (main): Switch to binary TIMESTAMP. - * stp_merge.c (main): Switch to binary TIMESTAMP. - -2005-10-14 Tom Zanussi <zanussi@us.ibm.com> - - PR 1476 - * librelay.c: Add flag for buffer processing. - (reader_thread): Disable/enable cancel state around buffer - processing, and update flag to show we're busy processing. - (cleanup_and_exit): Wait for any threads busy processing. - (stp_main_loop): Initialize processing mutex. - -2005-09-06 Martin Hunt <hunt@redhat.com> - - * librelay.c: Remove all USE_PROCFS ifdefs. - (sig_usr): Signal handler for SIGUSR1. - (start_cmd): New function to handle "-c" option, forks() - off a new process then waits for SIGUSR1 to exec it. - (init_stp): Call start_cmd(). - (stp_main_loop): Set a signal handler for SIGCHLD. - - * stpd.c (main): Add "-t" and "-c" options. - (usage): Update with new options. - -2005-08-29 Martin Hunt <hunt@redhat.com> - - * stpd.c main): Add enable_relayfs flag. - Turn it off with "-r". - -2005-08-24 Martin Hunt <hunt@redhat.com> - - * librelay.c (sigproc): Removed the "Exiting..." - message for now. - -2005-08-24 Martin Hunt <hunt@redhat.com> - - * librelay.c (sigproc): Reestablish signal handler so - impatient people don't hit ^C twice and terminate the - program before it saves the data and removes the module. - Also print a message to stderr that it is exiting. - (stp_main_loop): Write OOB data (warnings, errors, etc) - to stderr instead of stdout. - * librelay.h: Write debug info to stderr. - * Makefile: add librelay.h to dependencies. - -2005-08-23 Martin Hunt <hunt@redhat.com> - - * librelay.c (merge_output): Don't add an extra \n. - -2005-08-23 Martin Hunt <hunt@redhat.com> - - * librelay.c (read_last_buffers): New function. Directly grab the - last buffers. - (info_pending): Deleted. - (request_last_buffers): Deleted. - -2005-08-22 Martin Hunt <hunt@redhat.com> - - * Makefile (debug): Add debug target. - * librelay.h (dbug): Define. - * librelay.c: Enable some dbug lines. - -2005-08-19 Martin Hunt <hunt@redhat.com> - - * librelay.c (reader_thread): Check the return value for write(). - -2005-08-19 Frank Ch. Eigler <fche@elastic.org> - - * librelay.c (modpath): New global. Use it for insmod only. - * stpd.c (main): Set both modpath and modname, to support - modules specified by full path name. - -2005-08-19 Martin Hunt <hunt@redhat.com> - - * stpd.c (main): Simplify buffer size code. - * librelay.c: Major changes to support procfs instead of netlink. - -2005-08-03 Tom Zanussi <trz@us.ibm.com> - - * librelay.c: Track subbuf info requests/replies - so we know unequivocally when it's ok to do final - processing. - (reader_thread): Remove buffer-full warning. - -2005-08-03 Martin Hunt <hunt@redhat.com> - * librelay.c (init_stp): Change variable name to eliminate shadow warning. - -2005-08-03 Martin Hunt <hunt@redhat.com> - * librelay.c (open_control_channel): Set the receive buffer - to 512K, or the max allowed. - - * stpd.c: Remove "-n" subbug option and change "-b" option - so you can specify buffering in different ways. Add a verbose option. - Exec the "stp_check" script. - -2005-08-01 Frank Ch. Eigler <fche@redhat.com> - - * librelay.c: Correct fwrite api usage. - * all: Correct copyright holder name. - -2005-08-01 Martin Hunt <hunt@redhat.com> - - * librelay.h: Get structs and enums from - ../transport/transport_msgs.h to eliminate duplication. - - * librelay.c (send_request): Retry if send fails. - (open_relayfs_files): Use fopen() instead of open() for the - percpu tmpfiles. - (request_last_buffers): Just send cpu number for STP_BUF_INFO request. - (reader_thread): Ditto. - (process_subbufs): Use fwrite_unlocked() instead of write(). - (sigchld): Removed. - (init_stp): Go back to using system() instead of fork and exec - to load module. When done, send a TRANSPORT_INFO request. - (cleanup_and_exit): Change parameter to simple flag to - indicate if the module needs removing. - (sigproc): Remove complicated logic and just send STP_EXIT. - (stp_main_loop): When receiving STP_TRANSPORT_INFO, set - the local params and reply with a STP_START. When - receiving STP_START, there was an error, so cleanup and exit. - - * stpd.c (main): Added new options to set number of - buffers and their size. - -2005-07-29 Roland McGrath <roland@redhat.com> - - * librelay.c (process_subbufs): Use unsigned for I. - (sigproc): Add __attribute__((unused)) on parameter. - (sigchld): Likewise. Avoid shadowing global variable name. - (stp_main_loop): Add a cast. - -2005-07-18 Martin Hunt <hunt@redhat.com> - - * stp_merge.c (main): Fix dropped count calculation. - -2005-07-14 Tom Zanussi <zanussi@us.ibm.com> - - * librelay.c (reader_thread): Add missing pthread_mutex_lock - -2005-07-14 Frank Ch. Eigler <fche@redhat.com> - - * stpd.c (main): Pass !quiet mode to init_stp(). - * librelay.c (init_relayfs): Be quiet if !print_totals. - -2005-07-13 Martin Hunt <hunt@redhat.com> - - * stpd.c (usage): Fix usage string. - - * librelay.c (init_stp): Change last arg to NULL, not 0. - -2005-07-08 Martin Hunt <hunt@redhat.com> - - * librelay.c (sigchld): Signal handler to detect - completion of module loading. - (init_stp): Use fork/exec instead of system() so - we can get async signal of module load success/failure. - (cleanup_and_exit): New function. - (sigproc): If module is not loaded, don't send message to it. - (stp_main_loop): Call cleanup_and_exit() when STP_EXIT - is received. Don't send a request for the transport - mode. The module will send notification to the daemon - when it is ready. - - * stpd.c (main): Don't print message until module - is loaded. - -2005-07-01 Martin Hunt <hunt@redhat.com> - - * librelay.c: Removed the color coding of cpu output. - -2005-06-28 Martin Hunt <hunt@redhat.com> - - * librelay.c (merge_output): Use unlocked stdio - to improve speed. - - * stp_merge.c: New file. - - * Makefile: Add stp_merge. - -2005-06-27 Martin Hunt <hunt@redhat.com> - - * stpd.c (main): Add new command line arg, "-m" - to disable the per-cpu merging. - - * librelay.c (merge_output): Replacement for sort_output(). - Efficiently merges per-cpu streams. - - -2005-06-20 Tom Zanussi <zanussi@us.ibm.com> - - * librelay.c: Large refactoring, important changes are - added transport_mode command, for relayfs transport - display results only when probe completes and/or write - output file, merge, sort and delete the per-cpu files - in postprocessing, refactor so that relayfs files aren't - created until transport command received, removed sigalrm, - read the final subbuffers on exit - - * stpd.c: Remove all command-line args except for -p - and -q as well as all code related to buffer sizes. - - * librelay.h: Add transport mode command and struct. - -2005-05-16 Martin Hunt <hunt@redhat.com> - - * librelay.c (sigproc): If STP_EXIT send fails, keep retrying - every 10ms. - (init_stp): Don't set n_subbufs and subbuf_size params. diff --git a/runtime/transport/ChangeLog b/runtime/transport/ChangeLog deleted file mode 100644 index 14abee41..00000000 --- a/runtime/transport/ChangeLog +++ /dev/null @@ -1,862 +0,0 @@ -2009-02-18 David Smith <dsmith@redhat.com> - - * control.c: Removed unused variable '_stp_current_buffers'. - * procfs.c (_stp_set_buffers): Removed unused function. - (_stp_register_ctl_channel_fs): Removed unused variables and - label. - * symbols.c (u32_swap): Removed unused function. - (generic_swap): Ditto. - (_stp_sort): Ditto. - (_stp_section_is_interesting): Ditto. - * transport.c (_stp_transport_init): Removed unused variable - 'ret'. - -2009-02-17 David Smith <dsmith@redhat.com> - - * control.c: Contains generic control channel functions. - * procfs.c: Specific procfs control channel functions. All generic - control channel functions moved to control.c. - * debugfs.c: New file containing debugfs specific control channel - functions. - * control.h: New file. - * transport.c: Updated file inclusion. - -2009-02-13 David Smith <dsmith@redhat.com> - - * procfs.c: Added inclusion of ../procfs.c for - _stp_mkdir_proc_module(). - -2009-02-12 David Smith <dsmith@redhat.com> - - * transport.c: Moved inclusion of procfs.c to - procfs_derived_probe_group::emit_module_decls() in tapsets.cxx. - - * transport.c (_stp_lock_transport_dir): Renamed from - _stp_lock_debugfs(), since on older kernels this actually uses - procfs. - (_stp_unlock_transport_dir): Renamed from _stp_unlock_debugfs(), - since on older kernels this actually uses procfs. - (_stp_lock_transport_dir): Changed - _stp_lock_debugfs()/_stp_unlock_debugfs() to - _stp_lock_transport_dir()/_stp_unlock_transport_dir(). - * transport.h: Ditto. Also added _stp_transport_init() - prototype. - * utt.c (utt_remove_root): Changed - _stp_lock_debugfs()/_stp_unlock_debugfs() to - _stp_lock_transport_dir()/_stp_unlock_transport_dir(). - * relayfs.c (_stp_remove_relay_root): Ditto. - -2009-02-05 Frank Ch. Eigler <fche@elastic.org> - - PR9740/9816? - * transport.c (_stp_handle_start): Run alloc/free_vm_area() dummy - calls as workaround for kernel valloc/vfree bug. Suggested by - Masami Hiramat <mhiramat@redhat.com>. - -2009-01-06 Frank Ch. Eigler <fche@elastic.org> - - PR9699. - * transport.c (_stp_transport_init): Adapt to task_struct cred switch. - -2008-11-28 Frank Ch. Eigler <fche@elastic.org> - - PR5947: make code -Wpointer-arith clean - * symbols.c (generic_swap): Cast void* to char* as needed. - (_stp_sort): Ditto. - * utt.c (utt_switch_subbuf): Ditto. - * utt.h (utt_reserve): Ditto. - -2008-11-13 Masami Hiramatsu <mhiramat@redhat.com> - - * utt.c (utt_trace_setup): Use KERN_WARNING and show buffer size. - -2008-11-13 Masami Hiramatsu <mhiramat@redhat.com> - - PR7016 - * utt.c (utt_trace_setup): Check freeram and bufferram before - allocating relay buffers for avoiding OOM. - -2008-11-12 Frank Ch. Eigler <fche@elastic.org> - - * transport.c (_stp_cleanup_and_exit): Move debug print into - one-time conditional block to prevent spew. - -2008-10-07 Frank Ch. Eigler <fche@elastic.org> - - PR 4886 - * symbols.c (_stp_do_relocation): Simplify processing of build-id - note address. - -2008-09-17 Frank Ch. Eigler <fche@elastic.org> - - PR 6487, 6504. - From Masami Hiramatsu <mhiramat@redhat.com> - * utt.c (utt_switch_subbof, _utt_wakeup*, utt_reserve): New. - -2008-07-17 Frank Ch. Eigler <fche@elastic.org> - - * symbols.c (_stp_do_relocation): Adapt to stp_module decl changes. - -2008-07-12 Frank Ch. Eigler <fche@elastic.org> - - PR 6738. - * procfs.c (*): Remove code/data associated with symbol/unwind data - uploading. - (_stp_ctl_write_cmd): Support STP_RELOCATION message. - (kbug): Replace calls with dbug_trans(). - * relayfs.c (kbug): Ditto. - * transport.h: Corresponding changes. - -2008-07-10 Frank Ch. Eigler <fche@elastic.org> - - PR 6736. - * control.c (_stp_ctl_write_cmd): Accept STP_RELOCATION message. - * symbols.c: Gutted file. - (_stp_do_relocation): New function. - * transport.c (_stp_transport_init): Corresponding changes. - * transport_msgs.h: Ditto. - -2008-07-09 Frank Ch. Eigler <fche@elastic.org> - - PR5963 - * transport.c (_stp_work_queue): Don't signal a premature exit - if a begin probe happened to exit(). - -2008-06-23 Wenji Huang <wenji.huang@oracle.com> - PR 6646 - * symbols.c (_stp_validate_addr): Revert the previous code. - -2008-06-23 Wenji Huang <wenji.huang@oracle.com> - PR 6646 - * symbols.c (_stp_validate_addr): Add validating address in runtime. - -2008-06-13 Wenji Huang <wenji.huang@oracle.com> - - * control.c (_stp_ctl_write_dbug): Remove STP_UNWIND support. - -2008-06-03 Frank Ch. Eigler <fche@elastic.org> - - PR 6429 - * symbols.c (_stp_init_modules): Don't ask stapio for unwind data. - * control.c (_stp_ctl_write_cmd): Remove STP_UNWIND support. - * transport_msgs.h (STP_UNWIND): Remove declaration. - -2008-04-30 Masami Hiramatsu <mhiramat@redhat.com> - - PR 5645 - * transport.c (_stp_transport_init): Fix subbuffer size calculation - overflow. - -2008-04-21 hunt <hunt@redhat.com> - - * control.c (_stp_ctl_write): Return len + sizeof(int) so - sending an empty command doesn't return 0 and look like a failure. - * transport.c: _stp_cleanup_and_exit(): Cleanup. - -2008-04-15 Frank Ch. Eigler <fche@elastic.org> - - PR 6410 - * symbols.c (_stp_do_unwind_data): Tolerate !STP_USE_DWARF_UNWINDER. - -2008-04-15 Frank Ch. Eigler <fche@elastic.org> - - PR 6405 - * symbols.c (_stp_load_module_symbols): Support older kernels - without module->sect_attrs->nsections. - -2008-04-09 Martin Hunt <hunt@dragon> - - * symbols.c (_stp_init_kernel_symbols): Print error - messages and exit if symbol lookups fail. - (_stp_init_modules): Lookup modules_op. - -2008-03-31 Martin Hunt <hunt@redhat.com> - - * symbols.c (_stp_init_modules): Use STP_USE_DWARF_UNWINDER. - - * transport.c (_stp_get_root_dir): Remove misleading error message. - -2008-03-30 Martin Hunt <hunt@redhat.com> - - * symbols.c (_stp_init_modules): If using frames, don't - request unwind info. - -2008-03-25 Martin Hunt <hunt@redhat.com> - - * control.c (_stp_ctl_write_dbug): Insert missing break. - - 32-bit systems can't do 64-bit get_user(), so - * symbols.c (_stp_do_unwind_data): Change unwind_len to a u32. - * transport_msgs.h (struct _stp_msg_unwind): Ditto. - -2008-02-27 Martin Hunt <hunt@redhat.com> - - * symbols.c: Use rwlocks. Use new dbug macros. Handle - unwind info if present. - - * transport.c: Include mempool.c. Update dbug and kbug calls - to new macros. - * transport_msgs.h (_stp_command_name): Add - struct containing message names for debugging. - - * control.c, procfs.c: Use new dbug macros. Use - new mempool functions. - -2008-01-28 Martin Hunt <hunt@redhat.com> - - * control.c, procfs.c, symbols.c: Use DEFINE_SPINLOCK - -2008-01-15 Martin Hunt <hunt@redhat.com> - - PR4037 and fixes to better synchronize staprun and stapio. - * transport_msgs.h (struct _stp_symbol32): New. - (struct _stp_symbol64): New. - (struct _stp_msg_symbol_hdr): New. - (struct _stp_msg_module): New. - (STP_READY): Declare. - - * transport.c (_stp_handle_start): Don't set _stp_start_finished. - (_stp_work_queue): Don't use _stp_start_finished. - (_stp_transport_init): Don't call _stp_ask_for_symbols(). - - * symbols.c (_stp_do_symbols): Use _stp_msg_symbol_hdr; - - * control.c (_stp_sym_write_cmd): Allow sending of headers - and data in separate messages. - (_stp_ctl_write_cmd): Add STP_READY message. - - * procfs.c (_stp_sym_write_cmd): Allow sending of headers - and data in separate messages. - (_stp_ctl_write_cmd): Add STP_READY message. - -2008-01-15 Martin Hunt <hunt@redhat.com> - - Support for DEBUG_MEM - * transport.c (_stp_transport): Call stp_mem_debug_done(); - * (*.c): Call stp malloc and free functions. - -2007-11-09 Masami Hiramatsu <mhiramat@redhat.com> - - PR3858 - * transport.c (_stp_transport_init): Reduce relay buffer size to - 64KB*2 if -DRELAY_GUEST is specified. - -2007-11-09 Martin Hunt <hunt@redhat.com> - PR 5281 - * transport.c (_stp_detach, _stp_attach): Call utt_set_overwrite() - instead of setting a flag directly. - * utt.c (utt_set_overwrite): New. Set overwrite mode. - * relayfs.c (utt_set_overwrite): New. Set overwrite mode. - * utt.h: Remove global utt_overwrite_flag. - -2007-11-01 Martin Hunt <hunt@redhat.com> - - * procfs.c, control.c, transport.c: Recognize when stapio - is detached and disable delayed work. Enable when attached. - Cleanup code to destroy workqueue on exit. - -2007-10-12 Martin Hunt <hunt@redhat.com> - - * transport.c (_stp_ask_for_symbols): Don't ask for - transport_info yet. Need to wait until symbols are - received. - (_stp_work_queue): Rename _stp_ready_q to _stp_ctl_ready_q. - * procfs.c: Create a ".symbols" channel and use it for - STP_MODULE and STP_SYMBOLS. Rename "cmd" channel to ".cmd". - * control.c: Ditto. - -2007-09-21 Martin Hunt <hunt@redhat.com> - From Alan Brunelle - * control.c (_stp_ctl_read_cmd): Cast count to an int before printing. - -2007-09-20 Martin Hunt <hunt@redhat.com> - - * transport.h: Increase default buffer size. - * control.c (_stp_ctl_read_cmd): Check buffer size. - -2007-09-10 Martin Hunt <hunt@redhat.com> - - * procfs.c (_stp_register_ctl_channel): Call - _stp_mkdir_proc_module(). - (_stp_unregister_ctl_channel): Call _stp_rmdir_proc_module(). - * transport.c: Include ../procfs.c runtime procfs functions. - -2007-08-17 Martin Hunt <hunt@redhat.com> - PR3857 - From Masami Hiramatsu - * utt.c (utt_subbuf_start_callback): Use overwrite flag. - * control.c (_stp_ctl_open_cmd): Set overwrite_flag off. - (_stp_ctl_close_cmd): Set overwrite flag on. - -2007-08-14 David Smith <dsmith@redhat.com> - - Merge from setuid-branch. Changes also by Martin Hunt - <hunt@redhat.com>. - - * control.c (_stp_ctl_write): Make sure we don't overflow. - (_stp_ctl_open_cmd): Do not allow multiple opens of the control - file. - (_stp_ctl_write_cmd): Once STP_START is received, ignore - everything except STP_EXIT. Create another state variable - "initialized". Don't respond to STP_SYMBOLS or STP_MODULES unless - initialized is 0. Also check that current pid is the same as the - pid that did insmod. - (_stp_register_ctl_channel): Bug fix - sets owner/group after - checking for NULL. - - * procfs.c (_stp_ctl_write): Make sure we don't overflow. - (_stp_ctl_open_cmd): Do not allow multiple opens of the control - file. - (_stp_ctl_write_cmd): Once STP_START is received, ignore - everything except STP_EXIT. Create another state variable - "initialized". Don't respond to STP_SYMBOLS or STP_MODULES unless - initialized is 0. Also check that current pid is the same as the - pid that did insmod. - (_stp_register_ctl_channel): Set ownership of cmd file and percpu - files for bulkmode. - - * relayfs.c (utt_trace_setup): Set ownership of percpu files. - Improved error handling. - (utt_trace_remove): Improved error checking. - - * utt.c (utt_remove_tree): Improved error checking. - (utt_trace_cleanup): Ditto. - (utt_create_buf_file_callback): Set file ownership. - (utt_create_global_buf_file_callback): Set file ownership. - - * transport.h: Delcare _stp_uid, _stp_gid, and _stp_init_pid. - * transport.c (_stp_transport_init): Set _stp_uid, _stp_gid, and - _stp_init_pid. - -2007-07-26 Martin Hunt <hunt@redhat.com> - - Spotted by Ming Chang. - * procfs.c (_stp_register_ctl_channel): Fix iterator when removing - proc entries when an error occurs. - -2007-07-10 Michal Schmidt <mschmidt@redhat.com> - - * symbols.c (_stp_del_module): Split freeing of module memory into - a separate function _stp_free_module(). - (_stp_do_module): Free module memory if _stp_ins_module() fails. - -2007-07-09 Martin Hunt <hunt@redhat.com> - - * symbols.c (_stp_ins_module): Check for overflow of - modules array. - (_stp_do_module): If _stp_ins_module() fails, return an error. - -2007-07-02 Martin Hunt <hunt@redhat.com> - - * symbols.c (_stp_do_symbols): Set "data" pointer for kernel to _etext. - (_stp_sort): New. sort function from the kernel. - (_stp_load_module_symbols): Use _stp_sort(). - -2007-06-21 Martin Hunt <hunt@redhat.com> - - * control.c (_stp_ctl_write_cmd): Add support for STP_BULK. - * transport_msgs.h (enum): Add STP_BULK. - -2007-06-18 Martin Hunt <hunt@redhat.com> - - * control.c (_stp_register_ctl_channel): Fix mode of cmd file. - -2007-05-16 Will Cohen <wcohen@redhat.com> - - * control.c: Explicit type cast for picky compilers. - -2007-05-15 Martin Hunt <hunt@redhat.com> - - * control.c: Change default buffer number and size. - (_stp_ctl_write): Add debug statements. Check size of - message to avoid overwriting buffer. - -2007-04-27 Martin Hunt <hunt@redhat.com> - - * utt.h (struct utt_trace): Remove sequence. - * utt.c (utt_trace_cleanup): Remove free of utt->sequence. - (utt_dropped_open): PR 4415. Use STAPCONF_INODE_PRIVATE to detect - correct inode struct. - (utt_trace_setup): Do not allocate utt->sequence. - -2007-04-02 Martin Hunt <hunt@redhat.com> - - * transport_msgs.h (struct _stp_msg_trans): Deleted. - Transport parameters are now read from procfs. - - * transport.c (_stp_ask_for_symbols): STP_TRANSPORT - message is empty. - - * procfs.c (_stp_ctl_open_cmd): New. Set _stp_ pid. - (_stp_ctl_close_cmd): New. Unset _stp_pid. - (_stp_proc_fops_cmd): Add pointers to above funcs. - (_stp_ctl_read_bufsize): New. - (_stp_register_ctl_channel): Create a proc read entry - "bufsize" containing transport buffer sizes. - -2007-03-28 Martin Hunt <hunt@redhat.com> - - * control.c (_stp_ctl_open_cmd): Set _stp_pid. - (stp_ctl_close_cmd): Clear _stp_pid. - * transport.h: Declare _stp_pid; - -2007-03-26 Frank Ch. Eigler <fche@elastic.org> - - * transport.c: Add #include <linux/namei.h> for lookup_one_len. - -2007-03-26 Martin Hunt <hunt@redhat.com> - - * symbols.c (_stp_do_module): If a module has no symbols, just - return NULL instead of an errorcode. - - * control.c, procfs.c, relayfs.c, transport.c, utt.c, utt.h: - Revert back to using systemtap/modulename instead of systemtap_pid. - -2007-03-21 Martin Hunt <hunt@redhat.com> - - * symbols.c (_stp_del_module): Add a call to _stp_module_relocate - to clear its cache. - -2007-03-20 Frank Ch. Eigler <fche@elastic.org> - - * symbols.c (_stp_do_symbols): Add cautionary blurb for important - setup of _stp_modules[0]->text. - -2007-03-20 Martin Hunt <hunt@redhat.com> - - * symbols.c (_stp_alloc_module): Fix up error - cleanup when malloc fails. - -2007-03-14 Martin Hunt <hunt@redhat.com> - - * transport_msgs.h: ifdef old messages as such. - Add support for new transport. - * relayfs.c: Simplify and add new interface to look - like utt. - * utt.[ch]: New files. Similar to the proposed utt interface. - These setup and teardown relayfs on debugfs. - * control.c: New file. Implements a simple control channel. - A small subset of procfs.c. - * procfs.c: This is now only used for old kernels lacking newer - relayfs. Change STP_RELAYFS to STP_BULKMODE. Use new - messages from transport_msgs.h. Don't support - RELAYFS_CHANNEL_VERSION >= 4. CHanges all control channel functions - to new names. Use pids instead of module names in /proc names. - -2007-03-12 Frank Ch. Eigler <fche@elastic.org> - - * procfs.c (_stp_register_procfs): Use /proc/MODULE rather than - /proc/systemtap/MODULE. - -2007-03-12 Frank Ch. Eigler <fche@redhat.com> - - PR 4179. - Based on patch from Vasily Averin <vvs@sw.ru>: - * procfs.c (_stp_register_procfs): Recover from partial failures. - * transport.c (_stp_transport_open): Ditto. - -2007-01-30 Martin Hunt <hunt@redhat.com> - - * symbols.c: Comment out many debug lines. - -2007-01-29 Martin Hunt <hunt@redhat.com> - - * procfs.c: Count allocated IO memory. - * symbols.c: Use _stp_kmalloc() and _stp_kzalloc(). - * transport.c: Count allocated IO memory. - -2007-01-09 Martin Hunt <hunt@redhat.com> - - * symbols.c (_stp_del_module): Fix so memory allocated - for module 0 (kernel) is freed. - (_stp_free_modules): No need to lock module list. - -2006-12-20 Martin Hunt <hunt@redhat.com> - - * transport.c: Fixes to use the new 2.6.20 workqueue API. - -2006-11-15 Martin Hunt <hunt@redhat.com> - - * 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. - -2006-11-09 Martin Hunt <hunt@redhat.com> - - * 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. - -2006-11-02 Martin Hunt <hunt@redhat.com> - * symbols.c (_stp_do_module): Fix error message. - -2006-11-02 Martin Hunt <hunt@redhat.com> - - * symbols.c: New file. Get the STP_SYMBOLS and STP_MODULE - messages, allocate memory and store the data. - - * procfs.c (_stp_proc_write_cmd): When STP_SYMBOLS or STP_MODULE - request is received, call the appropriate functions. - - * transport.c (_stp_handle_start): If necessary, ask staprun for - symbols and modules. - (_stp_cleanup_and_exit): Unregister module notifier. - (_stp_transport_close): Unregister module notifier and free module - memory. - * transport_msgs.h (enum): Add STP_MODULE and STP_SYMBOLS. - -2006-09-26 David Smith <dsmith@redhat.com> - - * transport.c: Changed 'stpd' references to 'staprun'. - * transport.txt: Ditto. - -2006-09-26 Martin Hunt <hunt@redhat.com> - - * 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. - -2006-09-25 Tom Zanussi <zanussi@us.ibm.com> - - * procfs.c (_stp_proc_read): Set buf_info flushing flag. - * transport.c (_stp_cleanup_and_exit): Remove braces. - * transport_msgs.h: Add flushing flag to buf_info. - -2006-09-22 Martin Hunt <hunt@redhat.com> - - * transport.c (_stp_work_queue): Reenable some cleanup - code. - -2006-09-21 Martin Hunt <hunt@redhat.com> - - * transport.c (_stp_transport_init): Call _stp_print_init(). - (_stp_cleanup_and_exit): Call _stp_print_cleanup(). - -2006-09-21 Tom Zanussi <zanussi@us.ibm.com> - - * relayfs.c (_stp_get_relay_root): Call new mutex lock/unlock - wrappers instead. - (_stp_lock_inode): New. - (_stp_unlock_inode): New. - -2006-09-19 Tom Zanussi <zanussi@us.ibm.com> - - * procfs.c (_stp_get_proc_root): Removed. - (_stp_force_dir_creation): Removed. - (_stp_register_procfs): Remove unneeded procfs dentry code. * - relayfs.c (_stp_create_buf_file): Remove code to create relay - files in procfs, add code to create in debugfs. - (_stp_remove_buf_file): Remove code to delete relay files in - procfs, add code to delete from debugfs. - (_stp_create_relay_dir): New. - (_stp_remove_relay_dir): New. - (_stp_get_relay_root): New. - (_stp_relayfs_close): Use new functions. - (_stp_relayfs_open): Consolidate alternative versions and remove - extraneous version. * relayfs.h: Remove extraneous - _stp_relayfs_open prototype. - * transport.c (_stp_transport_open): Remove extraneous call to - _stp_relayfs_open() and remove call to _stp_unregister_procfs() on - failure - since it's called from cmd write, cmd can't be removed; - it's removed in normal shutdown anyway. - -2006-09-18 Martin Hunt <hunt@redhat.com> - - * transport_msgs.h (struct transport_info): Add merge field. - * transport.c (_stp_transport_open): Set merge field. - -2006-06-21 Josh Stone <joshua.i.stone@intel.com> - - PR 2525 - * transport.c (_stp_handle_start): Initialize timer functions. - * transport.c (_stp_cleanup_and_exit): Teardown timer functions. - -2006-06-13 Martin Hunt <hunt@redhat.com> - - * transport.c (_stp_transport_close): Destroy workqueue when - done. - -2006-06-09 Martin Hunt <hunt@redhat.com> - - * transport.c: Using the default workqueue was causing problems - because of the long delays on probe_exit(). Created a new - systemtap work queue and used that instead. - -2006-06-05 Martin Hunt <hunt@redhat.com> - - * procfs.c (_stp_write): Always use spin_lock_irqsave() because - this function can sometimes be called with interrupts enabled. - -2006-04-10 Martin Hunt <hunt@redhat.com> - - * procfs.c (_stp_write): More fixes because buffers - are no longer null-terminated. - -2006-03-20 Martin Hunt <hunt@redhat.com> - - * procfs.c (_stp_write): Combine buffers only for REALTIME_DATA. - -2006-03-16 Tom Zanussi <zanussi@us.ibm.com> - - * procfs.c (_stp_proc_read): Change ifdef for relayfs version. - * relayfs.c: Change ifdefs for relayfs version. - * relayfs.h: Remove relayfs-config.h include. - * transport.c (_stp_handle_buf_info.c): Change ifdef for relayfs - version. - * relayfs-config.h.in: Removed. - -2006-03-15 Tom Zanussi <zanussi@us.ibm.com> - - * procfs.c (_stp_proc_read): Add ifdef for CONFIG_RELAY. - (_stp_get_proc_root): New function. - (_stp_force_dir_create): New function. - (_stp_register_procfs): Add support for CONFIG_RELAY files in - proc. - - * relayfs.c (_stp_subbuf_start): Fix ppc64 compilation error - mentioned in bug #2406. - (_stp_create_buf_file): New function. - (_stp_remove_buf_file): New function. - (_stp_relayfs_close): Add support for CONFIG_RELAY. - (_stp_relayfs_open): Add support for CONFIG_RELAY. - - * relayfs.h: Add support for CONFIG_RELAY and - RELAYFS_VERSION_GE_4. - * transport.c (_stp_handle_buf_info.c): Add support for - CONFIG_RELAY. - * transport (_stp_transport_open.c): Add support for CONFIG_RELAY. - - * relayfs-config.h.in: New file. - -2006-03-15 Martin Hunt <hunt@redhat.com> - - * procfs.c (STP_DEFAULT_BUFFERS): Bump up to 256. - -2006-03-06 Martin Hunt <hunt@redhat.com> - - * transport_msgs.h (struct cmd_info): New message. - -2006-02-25 Martin Hunt <hunt@redhat.com> - - * procfs.c (_stp_proc_write_cmd): Check return code for - _stp_transport_open(). - - * transport.c (_stp_transport_write): This function - can now sleep because it is - (_stp_handle_start): Don't use a mutex when a simple atomic - will do. - (_stp_work_queue): Check atomic to see if probe_start() - has finished before attempting exit. - (_stp_transport_close): PR2391. Cancel work queue. - (_stp_transport_init): If _stp_register_procfs() fails, - return an error code. - - * transport.txt: New file. Documents transport initialization and - shutdown sequence. - -2006-02-24 Martin Hunt <hunt@redhat.com> - - * transport.c (_stp_transport_init): Fail if - _stp_register_procfs() fails. - -2006-02-17 Martin Hunt <hunt@redhat.com> - - * procfs.c (_stp_proc_read_cmd): Change spin_lock() - to spin_lock_irqsave(). - - * transport.c (_stp_work_queue): Ditto. - -2005-12-02 Martin Hunt <hunt@redhat.com> - - * procfs.c (_stp_set_buffers): kmalloc the buffers instead - of vmalloc. - (_stp_register_procfs): Ditto. - (_stp_unregister_procfs): kfree the buffers. - -2005-11-30 Martin Hunt <hunt@redhat.com> - - * transport.h (STP_WORK_TIMER): Declare. - * transport.c (_stp_work_queue): Wake up every STP_WORK_QUEUE - jiffies and check IO and exit status. - (_stp_handle_exit): Deleted. - * procfs.c (_stp_proc_write_cmd): Just set exit flag on STP_EXIT. - (_stp_write): Don't call wake_up_interruptible. - -2005-10-17 Martin Hunt <hunt@redhat.com> - - * transport.c (_stp_handle_start): Grab semaphore before - calling probe_start() and release after it is done. - (_stp_handle_exit): Ditto for exiting. This prevents - exiting before probe_start() is finished. - -2005-10-14 Tom Zanussi <zanussi@us.ibm.com> - - * relayfs.h: Add ifdef'ed relayfs_fs.h include for mainline - relayfs version. If you're running a kernel with a version - of relayfs >= 4 (the version # can be found in - /include/linux/relayfs_fs.h) configured in, adding a - #define RELAYFS_VERSION_GE_4 at the top of transport/relayfs.h - will make systemtap use it instead of the packaged version. - - * relayfs.c: Add ifdef'ed relayfs callback functions for - mainline relayfs version. - (_stp_relayfs_open): Add ifdef'ed code for mainline - relayfs version. - * procfs.c (_stp_proc_read): Ditto. - * transport.c (_handle_buf_info): Ditto. - -2005-10-05 Tom Zanussi <zanussi@us.ibm.com> - - * transport.c (_stp_transport_open): Add kbug message. - * transport.h: Change default n_subbufs to 16. - -2005-09-08 Martin Hunt <hunt@redhat.com> - - * procfs.c (_stp_register_procfs): Change ifdefs to eliminate - unused variable warnings. - (_stp_unregister_procfs): Ditto. - -2005-09-06 Martin Hunt <hunt@redhat.com> - - * transport.c (_stp_handle_start): Always reply to - a start message with STP_START. - -2005-08-24 Martin Hunt <hunt@redhat.com> - - * transport_msgs.h (enum): New type, STP_OOB_DATA. - -2005-08-23 Martin Hunt <hunt@redhat.com> - - * transport.c (_stp_cleanup_and_exit): Remove a 2 second sleep - that should no longer be necessary. - - * procfs.c (_stp_write): If the ready queue is not empty - then attempt to grab the last buffer in it and append our data - to it. - -2005-08-22 Martin Hunt <hunt@redhat.com> - - * transport.h: Don't define _stp_transport_write. - * transport.c (_stp_transport_write): Use - _stp_transport_send() when in probe_exit(). - -2005-08-19 Martin Hunt <hunt@redhat.com> - - * transport.c (_stp_cmd_handler): Remove. This was used by - stp-control. - - * procfs.c (_stp_proc_write_cmd): Call schedule_work() instead - of running _stp_exit_handler immediately. Fixes a problem where - the module couldn't exit if all the output buffers were full. - Set .owner for the filesystem entries. - -2005-08-19 Martin Hunt <hunt@redhat.com> - - * transport.h: Remove netlink references. - * transport.c: Remove netlink references. Ifdef relayfs code. - * procfs.c: New file. - * Makefile: Deleted. - * control.c: Deleted. - * control.h: Deleted. - * netlink.c: Deleted. - * netlink.h: Deleted. - -2005-08-03 Martin Hunt <hunt@redhat.com> - - * transport.c: Comment out a couple printks. - -2005-08-01 Martin Hunt <hunt@redhat.com> - - * control.h: Remove STP commands from here and put in - transport_msgs. - - * transport_msgs.h: New file containing the structs and - values for the messages exchanged between stpd and transport. - - * transport.h: Moved stuff shared with stpd to transport_msgs.h - - * transport.c: Complete rewrite to better handle complicated - initialization involving exchanging data with stpd. Supports - buffer size negotiation and more. - -2005-07-18 Martin Hunt <hunt@redhat.com> - - * transport.h (_stp_transport_write): Call _stp_relay_write(). - - * transport.c (_stp_cleanup_and_exit): Print transport - failure count. - (_stp_relay_write): Like relay_write() except returns - -1 on error. - -2005-07-14 Tom Zanussi <zanussi@us.ibm.com> - - * netlink.c (_stp_netlink_open): Add missing delayed_pkts - initialization. - -2005-07-08 Martin Hunt <hunt@redhat.com> - - * transport.c: Rename pid to _stp_pid. - Rename t to _stp_tport. - (_stp_cleanup_and_exit): New internal function. - (stp_exit_helper): Call _stp_cleanup_and_exit(). - (_stp_transport_cleanup): New function. - (_stp_cmd_handler): Remove handler for STP_TRANSPORT_MODE. - The transport now notifies the daemon of the transport. - (_stp_transport_close): No longer calls _stp_exit_helper(). - That is done by _stp_transport_cleanup(). - (_stp_transport_open): When done, call _stp_handle_transport() - to notify the daemon what our transport is. - (_stp_transport_send): Put a retry limit on sends. - - * transport.h: Rename pid to _stp_pid. - (_stp_transport_cleanup): Add prototype. - -2005-06-23 Martin Hunt <hunt@redhat.com> - - * transport.h: Move all the transport open stuff here - and provide a convenient macro. - - * control.c: Replace macro DEFINE_SPINLOCK because - some kernels don't have it. - -2005-06-20 Tom Zanussi <zanussi@us.ibm.com> - - * control.h: Added STP_TRANSPORT_MODE command. - - * transport.c: Lots of changes, most importantly - added transport mode command, which also sends buffer - sizes to daemon, added limit to number of attempts to - sending STP_EXIT (in case there is no daemon), moved - exit helper call. - - * transport.h: Added transport type enum and transport - info struct for communication with userspace, changed and - moved a couple functions to transport.c. - -2005-05-17 Martin Hunt <hunt@redhat.com> - - * transport.c (_stp_transport_close): Call stp_exit_helper() - directly instead of using work queue. - -2005-05-16 Martin Hunt <hunt@redhat.com> - - * transport.c (_stp_cmd_handler): For STP_EXIT, schedule a - work queue to do the exit functions. - (_stp_transport_close): Call work queue for STP_EXIT. - (_stp_transport_send): Call _stp_ctrl_send() like before, except - when in probe_exit(). In that case, keep retrying on send errors - until we succeed. - - * transport.h (_stp_transport_write): Change to call - _stp_transport_send() for NETLINK_ONLY. - - * Makefile (KDIR): set to /lib/modules/... instead of - /usr/local/src/... - - - |