2005-12-02 Martin Hunt * 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 * 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 * 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 * 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 * transport.c (_stp_transport_open): Add kbug message. * transport.h: Change default n_subbufs to 16. 2005-09-08 Martin Hunt * procfs.c (_stp_register_procfs): Change ifdefs to eliminate unused variable warnings. (_stp_unregister_procfs): Ditto. 2005-09-06 Martin Hunt * transport.c (_stp_handle_start): Always reply to a start message with STP_START. 2005-08-24 Martin Hunt * transport_msgs.h (enum): New type, STP_OOB_DATA. 2005-08-23 Martin Hunt * 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 * 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 * 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 * 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 * transport.c: Comment out a couple printks. 2005-08-01 Martin Hunt * 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 * 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 * netlink.c (_stp_netlink_open): Add missing delayed_pkts initialization. 2005-07-08 Martin Hunt * 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 * 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 * 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 * transport.c (_stp_transport_close): Call stp_exit_helper() directly instead of using work queue. 2005-05-16 Martin Hunt * 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/...