summaryrefslogtreecommitdiffstats
path: root/runtime/transport
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | Small update.David Smith2009-03-111-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2009-03-11 David Smith <dsmith@redhat.com> * print_new.c (stp_print_flush): Updated MAX_RESERVE_SIZE. * transport/ring_buffer.c (__stp_alloc_ring_buffer): Reserves more space.
| * | | Handles polling and breaks down large buffers.David Smith2009-03-111-7/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2009-03-11 David Smith <dsmith@redhat.com> * print_new.c (stp_print_flush): Breaks up the buffer into smaller pieces (since the ring_buffer likes lots of small events, not one large one). * transport/ring_buffer.c (__stp_alloc_ring_buffer): Reserves space for struct _stp_entry. (_stp_data_poll_trace): New function. (_stp_data_write_commit): Wakes up any tasks waiting on data.
| * | | Cleanup.David Smith2009-03-091-162/+15
| | | |
| * | | First working version that actually produces output.David Smith2009-03-093-64/+253
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2009-03-09 David Smith <dsmith@redhat.com> * print_new.c (stp_print_flush): Calls _stp_data_write_reserve() and _stp_data_write_commit(). * transport/ring_buffer.c (__stp_alloc_ring_buffer): Sets up a default buffer size of STP_BUFFER_SIZE; (trace_seq_reset): New function. (peek_next_entry): New function. (__find_next_entry): New function. (find_next_entry_inc): New function. (_stp_data_read_trace): Uses find_next_entry_inc() to get the next entry, then calls _stp_entry_to_user() to copy it to the user's buffer, then calls ring_buffer_consume() to consume it. (_stp_data_write_reserve): New function. (_stp_data_write_commit): New function. * transport/transport.c (_stp_transport_close): Calls functions that were ifdef'ed out. * transport/transport.h (struct _stp_entry): Added _stp_entry definition and _stp_data_write_reserve()/_stp_data_write_commit() prototypes.
| * | | Start of new ring_buffer transport.David Smith2009-03-043-10/+361
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2009-03-04 David Smith <dsmith@redhat.com> * runtime.h: Added _stp_exit() prototype. * transport/ring_buffer.c: New file. * transport/transport.c: Removed unneeded utt_trace lines. Includes transport/ring_buffer.c. (_stp_transport_fs_init): Calls _stp_transport_data_fs_init(). (_stp_transport_fs_close): Calls _stp_transport_data_fs_close(). * transport/transport.h: Added prototypes.
| * | | More cleanup.David Smith2009-02-255-39/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2009-02-25 David Smith <dsmith@redhat.com> * debug.h: Removed unused variable '_stp_transport_state'. * print_new.c (stp_print_flush): Ifdef'ed out call to utt_reserve(). * runtime.h: Added _stp_warn() prototype. * transport/control.c: Includes control.h, mempool.c, and symbols.c. Renamed '_stp_attached' to '_stp_ctl_attached'. * transport/control.h: Removed _stp_pool_q declaration. * transport/debugfs.c (_stp_register_ctl_channel_fs): Uses _stp_get_module_dir(). * transport/transport.c: Cleanup. * transport/transport.h: Ditto.
| * | | Major hacking to minimal config.David Smith2009-02-246-38/+154
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2009-02-24 David Smith <dsmith@redhat.com> * print.h: New file. * print.c: Includes new print.h file. * print_new.c (stp_print_flush): Commented out some code that needs replacing. * sym.c: Includes sym.h. * transport/debugfs.c: Includes transport.h. * transport/relayfs.c: Updated _stp_get_root_dir() call. * transport/transport.c: Ifdef'ed out most setup. * transport/transport.h: Ifdef'ed out all but basics. * transport/utt.c (utt_create_tree): Updated _stp_get_root_dir() call. * transport/utt.h: Commented out 'rchan' in struct utt_trace. (utt_reserve): Ifdef'ed out guts.
* | | | Merge branch 'master' of git://sources.redhat.com/git/systemtapDave Brolley2009-06-171-1/+0
|\ \ \ \
| * | | | Moved time.c inclusion from runtime/transport/transport.c to runtime/runtime.h.David Smith2009-06-161-1/+0
| | |_|/ | |/| | | | | | | | | | | | | | * runtime/runtime.h: Includes time.c. * runtime/transport/transport.c: Removed time.c inclusion.
* | | | Merge branch 'master' of git://sources.redhat.com/git/systemtapDave Brolley2009-06-031-0/+8
|\| | |
| * | | Detect kretprobe trampoline and use fallback unwinder.Mark Wielaard2009-06-031-0/+8
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * runtime/sym.h (_stp_kretprobe_trampoline): Document. * translate.cxx (unwindsym_dump_context): Add stp_kretprobe_trampoline_addr. (dump_unwindsyms): Detect kretprobe_trampoline_holder symbol address. (emit_symbol_data): Initialize and emit _stp_kretprobe_trampoline. * runtime/transport/symbols.c (_stp_do_relocation): Detect kernel load address and adjust _stp_kretprobe_trampoline. * runtime/stack-i386.c (__stp_stack_print): Always use fallback unwinder when hitting kretprobe_trampoline_holder. * runtime/stack-x86_64.c (__stp_stack_print): Likewise.
* / | 2009-04-14 Dave Brolley <brolley@redhat.com>Dave Brolley2009-04-141-0/+4
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * translate.cxx (c_unparser::emit_unprivileged_user_check): Generate code to check _stp_unprivileged_user. * testsuite/lib/systemtap.exp (setup_server): Copy stap-env to $net_path. * runtime/transport/transport.c: Set up _stp_unprivileged_user. * runtime/staprun/staprun_funcs.c (check_signature): Distiguish among verification failure due to errors, tampering, untrusted signer. (check_permissions): Likewise. (check_groups): Set unprivileged_user. * runtime/staprun/staprun.c (insert_stap_module): Set _stp_unprivileged_user. * runtime/staprun/modverify.h (MODULE_OK): #define it. (MODULE_UNTRUSTED,MODULE_CHECK_ERROR,MODULE_ALTERED): Likewise. * runtime/staprun/modverify.c (modverify.h): #include it. (verify_it): Distiguish among verification failure due to errors, tampering, untrusted signer. (verify_module): Likewise. * runtime/staprun/common.c (unprivileged_user): Define it. * runtime/staprun/staprun.h (unprivileged_user): Declare it. * cache.cxx (get_from_cache): Get the module signature file. * stap-authorize-server-cert: Source `dirname $0`/stap-env. * stap-authorize-signing-cert: Likewise. * stap-client: Likewise. * stap-find-or-start-server: Likewise. * stap-find-servers: Likewise. * stap-gen-cert: Likewise. * stap-server: Likewise. * stap-serverd: Likewise. * stap-start-server: Likewise.
* / PR9947: move runtime cleanup out of the work queueJosh Stone2009-03-133-8/+27
|/ | | | | | | | | | | | The kernel lockdep checking found a possible deadlock if a forced rmmod tried to destroy _stp_work_queue at the same time that the work queue was unregistering tracepoints. An unlikely scenario, but still possible. Now the work queue will just issue a STP_REQUEST_EXIT down to usermode, and usermode will echo back an STP_EXIT that triggers the actual probe cleanup. This way the unregistrations are happening in exactly the same context as the registrations were.
* Add selective use of _stp_time_init/kill (PR9822)Josh Stone2009-02-231-6/+0
| | | | | | | | Our gettimeofday runtime has frequent wakeups to stay in sync with kernel time, but this is wasted effort if gettimeofday is not used in the script. This patch moves the calls to _stp_time_init and _stp_time_kill into begin and end/error probes, which only get pulled in if one of the gettimeofday variants is called.
* Better <linux/debugfs.h> header file inclusion.David Smith2009-02-202-1/+2
| | | | | | | 2009-02-20 David Smith <dsmith@redhat.com> * debugfs.c: Added inclusion of linux/debugfs.h. * relayfs.h: Removed inclusion of linux/debugfs.h.
* Kill all ChangeLogsJosh Stone2009-02-191-862/+0
| | | | | | Mark Wielaard, a dear friend of the departed, will be performing a song and dance at the funeral services to commemorate the joyous times that they had together.
* Removed unused functions and variables.David Smith2009-02-185-111/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-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'.
* Reduced control channel code duplication.David Smith2009-02-176-270/+132
| | | | | | | | | | | | 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.
* Fixed transport/procfs.c for systems that use the old transport (RHEL4).David Smith2009-02-132-3/+10
| | | | | | | | | | | 2009-02-13 David Smith <dsmith@redhat.com> * procfs.c: Added macros to guard against multiple inclusion. 2009-02-13 David Smith <dsmith@redhat.com> * procfs.c: Added inclusion of ../procfs.c for _stp_mkdir_proc_module().
* Moved inclusion of runtime/procfs.c to a better place.David Smith2009-02-122-1/+3
| | | | | | | | | | | | 2009-02-12 David Smith <dsmith@redhat.com> * tapsets.cxx (procfs_derived_probe_group::emit_module_decls): Moved inclusion of procfs.c here from runtime/transport.c 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.
* Cleanup. Renamed _stp_{un}lock_debugfs() to _stp_{un}lock_transport_dir().David Smith2009-02-125-11/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | 2009-02-12 David Smith <dsmith@redhat.com> * 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-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.
* PR9740/9816? - workaround for kernel valloc bugFrank Ch. Eigler2009-02-052-0/+16
|
* Use 'static' as much as possibleJosh Stone2009-01-288-37/+37
| | | | | | | | | | This change just inserts 'static' on runtime, tapset, and generated C functions and globals, so the compiler can do a better job of optimizing. My tests with small scripts show ~10% reduction in compile time and ~20% reduction in module size. Larger scripts may show less benefit, but I expect purely positive results.
* Adapt _stp_sort to 2.6.29.Wenji Huang2009-01-121-12/+12
| | | | | Acked-by: Masami Hiramatsu <mhiramat@redhat.com> Signed-off-by: Wenji Huang <wenji.huang@oracle.com>
* PR9699: build fixes for kernel 2.6.28Frank Ch. Eigler2009-01-062-1/+11
|
* PR5947: make runtime code -Wpointer-arith-cleanFrank Ch. Eigler2008-11-284-7/+18
|
* Fix the conflicted for_each_cpu macro with 2.6.28.Wenji Huang2008-11-171-3/+3
|
* Use KERN_WARNING and show buffer size.Masami Hiramatsu2008-11-132-4/+10
|
* PR7016: Check free memory before allocating buffers.Masami Hiramatsu2008-11-132-0/+26
|
* reduce transport debug verbosityFrank Ch. Eigler2008-11-122-2/+6
|
* PR4886: weaken build-id failure semanticsFrank Ch. Eigler2008-10-072-10/+15
|
* PR4886: check build-id if able.Wenji Huang2008-10-061-1/+10
| | | | This provides sanity check of debuginfo file based on build-id. Many cases are considered, whether build-id exists in debuginfo file or not, whether module is loaded or not, whether build-id exists in runtime kernel/module. It will do work when LD >= 2.18 and kernel >=2.6.23, otherwise no check.
* PR 6487, 6504: robustify __stp_print_flushFrank Ch. Eigler2008-09-173-0/+136
|
* support multiple-relocatable-section modules such as hypothetical ↵Frank Ch. Eigler2008-07-172-24/+5
| | | | -ffunction-sections .ko's
* PR6738: restore support for rhel4-era (2.6.9) kernelsFrank Ch. Eigler2008-07-124-190/+28
|
* PR6736: changelogs for post-merge compiled unwind/symbols data reorganizationFrank Ch. Eigler2008-07-103-3/+9
|
* Merge commit 'origin/master' into pr6429-comp-unwindsymsFrank Ch. Eigler2008-07-092-2/+6
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'origin/master': fix shutdown race condition for scripts that might exit during begin probes Fix PR 6732: Add runtime/autoconf-real-parent.c check for task_struct field. clarify dejagnu test case name for empty-struct changes add changelog entries for last two changes Add test suite for declaration resolution Fix semantic error: empty struct Add hack to support git 1.6 in git_version.sh Sync latest fix for git_version.sh from RadeonHD's tree Slightly cleanup code of translate.cxx PR2111: add general blurbage to stapprobes.5 on syscalls tapset Use `uname -rvm` for checking system compatibility. Generate Add section to stapex manual page on how installed examples are documented. Install examples, demos and samples. Install tutorial and langref manuals.
| * fix shutdown race condition for scripts that might exit during begin probesFrank Ch. Eigler2008-07-092-2/+6
| |
* | emit all symbol tables at compile time; don't do any module munging; new ↵Frank Ch. Eigler2008-07-042-567/+22
| | | | | | | | unwinder still disabled
* | transport/symbol rework: kernel-only probes workingFrank Ch. Eigler2008-06-295-12/+15
| |
* | STP_RELOCATE message for kernel relocatability (re)adaption, starting ↵Frank Ch. Eigler2008-06-294-23/+61
| | | | | | | | implementation
* | Merge commit 'origin/master' into pr6429-comp-unwindsymsFrank Ch. Eigler2008-06-272-1/+13
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'origin/master': Always include libdw using link groups. Fix bug in handling process(PID) probes. Added tests for 'process(PID)' variants. This commit makes changes to the VFS tapset. The changes include deprecation of syscalls2.stp: Add sys_renameat. Only probe lines once for the :* wildcard line pattern. Revert checking address in runtime bz451707: fix conversions.exp test $name Cleanup in tapsets.cxx Added powerpc support to runtime/syscall.h. Remove validating _stext due to many aliased symbols PR6646: Add checking address in runtime Fixed offset argument to vm_callback.
| * Revert checking address in runtimeWenji Huang2008-06-252-23/+5
| |
| * Remove validating _stext due to many aliased symbolsWenji Huang2008-06-241-7/+0
| |
| * PR6646: Add checking address in runtimeWenji Huang2008-06-242-1/+38
| |
* | PR6429: remove stapio STP_UNWIND support and associated elfutils dependencyFrank Ch. Eigler2008-06-231-1/+2
|/
* Remove STP_UNWIND support in _stp_ctl_write_dbugWenji Huang2008-06-132-4/+3
|
* PR6429: remove stapio STP_UNWIND support and associated elfutils dependencyFrank Ch. Eigler2008-06-034-6/+8
|
* Srinivasa DS <srinivasa@in.ibm.com>,PR6429 Inerim fix to avoid compilation ↵Srikar Dronamraju2008-05-251-0/+20
| | | | error of systemtap module
* PR5645: Fix sub-buffer size calculation and debug messages.Masami Hiramatsu2008-04-302-1/+11
|