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.
