summaryrefslogtreecommitdiffstats
path: root/runtime/print_new.c
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup.David Smith2009-06-181-129/+0
| | | | | | * runtime/print_old.c: Removed unneeded file. * runtime/print_flush.c: Renamed from print_new.c * runtime/print.c: Includes print_flush.c (instead of print_new.c).
* Transports now export their state.David Smith2009-06-181-3/+2
| | | | | | | | | | | | | | * runtime/transport/transport.h: Added prototype for _stp_transport_get_state(). * runtime/transport/relay_v2.c (_stp_transport_get_state): New function. * runtime/transport/relayfs.c (_stp_transport_get_state): Ditto. * runtime/transport/ring_buffer.c (_stp_transport_data_fs_init): Sets state. (_stp_transport_data_fs_start): Ditto. (_stp_transport_data_fs_stop): Ditto. (_stp_transport_get_state): Returns state. * runtime/print_new.c (stp_print_flush): Checks transport state before trying to flush.
* Start at supporting the original transport (STP_TRANSPORT_VERSION=1).David Smith2009-05-121-0/+9
| | | | | | | | | * runtime/print.c: Only use print_new.c. * runtime/print_new.c (stp_print_flush): Add STP_TRANSPORT_VERSION 1 support. * runtime/transport/transport.c: Removed inclusion of procfs.c. * runtime/transport/procfs.c (_stp_proc_read): Adapt to new interface. (_stp_proc_write): Ditto. * runtime/transport/relayfs.c: Ditto.
* Hid details of internal ring_buffer.c structure.David Smith2009-05-071-5/+8
| | | | | | | | | * runtime/print_new.c (stp_print_flush): Calls _stp_data_entry_data() to get data pointer. * runtime/transport/transport.h: Removed _stp_entry definition. Added _stp_data_entry_data() declaration. * runtime/transport/ring_buffer.c: Uses new _stp_data_entry structure. (_stp_data_entry_data): Added.
* 2009-03-31 David Smith <dsmith@redhat.com>David Smith2009-03-311-95/+37
| | | | | | | | | | | | * print_new.c (stp_print_flush): Pushed MAX_RESERVE logic down to _stp_data_write_reserve(). Now just keeps calling _stp_data_write_reserve() until it has written the entire print buffer. * transport/ring_buffer.c (_stp_data_write_reserve): Breaks large reserve requests down into smaller ones for better buffer use. Returns the number of bytes reserved. * transport/transport.h: Updated _stp_data_write_reserve() prototype.
* 2009-03-30 David Smith <dsmith@redhat.com>David Smith2009-03-301-89/+79
| | | | * print_new.c: Whitespace/indent changes only.
* Working bulkmode support.David Smith2009-03-131-6/+91
| | | | | | | | | | | | 2009-03-13 David Smith <dsmith@redhat.com> * print_new.c (stp_print_flush): Added bulkmode support for new transport. * transport/ring_buffer.c (__stp_find_next_entry): Fixed syntax error in bulkmode code. (_stp_transport_data_fs_init): Changed 'for_each_possible_cpu()' to 'for_each_online_cpu()' so that non-online cpu's won't have a trace file created.
* Small update.David Smith2009-03-111-1/+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-1/+29
| | | | | | | | | | | | 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.
* First working version that actually produces output.David Smith2009-03-091-8/+9
| | | | | | | | | | | | | | | | | | | | | | | 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.
* More cleanup.David Smith2009-02-251-0/+4
| | | | | | | | | | | | | | | | 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-241-2/+3
| | | | | | | | | | | | | | | | | | 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.
* Use 'static' as much as possibleJosh Stone2009-01-281-1/+1
| | | | | | | | | | 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.
* PR 6487, 6504: robustify __stp_print_flushFrank Ch. Eigler2008-09-171-3/+3
|
* PR5648: Fix unaligned access warning in stp_print_flush on ia64Masami Hiramatsu2008-05-071-5/+7
|
* 2008-01-28 Martin Hunt <hunt@redhat.com>hunt2008-01-281-2/+3
| | | | | | | | * alloc.c: Use DEFINE_SPINLOCK. * counter.c: Ditto. * pmap-gen.c: Ditto. * print_new.c: Ditto. * stat.c: Ditto.
* 2007-11-09 Masami Hiramatsu <mhiramat@redhat.com>hiramatu2007-11-091-2/+1
| | | | | | | | | | | | | | | | 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. * transport.c (_stp_transport_init): Reduce relay buffer size to 64KB*2 if -DRELAY_GUEST is specified. * systemtap.printf/sharedbuf.exp: New test for buffer sharing option. * systemtap.printf/sharedbuf.stp: Ditto. * systemtap.printf/hello.stp: Ditto. * systemtap.printf/hello2.stp: Ditto.
* 2007-05-29 Frank Ch. Eigler <fche@elastic.org>fche2007-05-291-2/+3
| | | | | | PR 4458 * print_new.c (_stp_print_flush): Use interrupt-disabling spinlock variants.
* 2007-03-14 Martin Hunt <hunt@redhat.com>hunt2007-03-141-0/+64
* 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().