This is the mail archive of the
systemtap@sources.redhat.com
mailing list for the systemtap project.
Runtime/transport changes checked in
- From: Tom Zanussi <zanussi at us dot ibm dot com>
- To: systemtap at sources dot redhat dot com
- Date: Tue, 21 Jun 2005 09:50:31 -0500
- Subject: Runtime/transport changes checked in
Hi,
I just checked in a bunch of changes to the runtime/transport. Here
are the highlights:
- transport selection and configuration (e.g. buffer sizes) are now
initiated by the probe over the control channel rather than from the
stpd command-line. I also removed all stpd options other than -p and
-q. The probe stp scripts have been updated accordingly.
- added a sequence counter used for sorting the per-cpu output files.
- the per-cpu output files are now merged and sorted to produce the
final output when using non-streaming mode i.e relayfs. By default,
the output goes both to stdout and to a file ("probe.out"). If -q is
specified on the stpd command-line, it goes only to the file, if -p,
only to stdout. Note that with non-streaming mode, there's now no
probe output until the probe completes, and the per-cpu files are
considered temporary and are deleted when the probe completes and the
output has been written. Also, at the moment, -p and -q don't do
anything in streaming i.e. netlink transport mode - the output goes
only to stdout. Note that to have a probe to run in non-streaming
mode, you need to comment out the STP_NETLINK_ONLY define at the top
of the probe and recompile.
- Various other changes, including some fixes to the exit processing.
I was having trouble unloading the module if the daemon died and vice
versa. The current code fixes that, but it's come to look like a bad
hack and should be fixed.
TODO:
- the per-cpu sorting is currently being done by the system sort. We
probably don't want that dependency, so need to replace it with our
own merging/sorting code.
- make streaming mode match non-streaming mode wrt output and
command-line options.
- probably want different output file names for each probe
e.g. shellsnoop.out, etc.
- look at abovementioned exit code.