This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: stpd issues
On Mon, 2005-08-22 at 11:55 -0400, Frank Ch. Eigler wrote:
> hunt wrote:
>
> > [...] The problem here is that your code probes sys_read() which is
> > now used by stpd to read the output from the probes. Each time
> > sys_read() is called, jprobes prints some data and flushes it, which
> > causes stpd to call sys_read(), which causes more data to be
> > printed, etc. [...]
>
> There is naturally an activity loop involved in monitoring kernel
> functions that happen to be used by the kernel monitoring
> infrastructure. However, the loop is not the nasty infinite recursion
> sort.
Not infinite recursion, just infinite.
> In particular, the "... which causes stpd ..." step is
> indirect, time-wise separated from the probe event.
So instead of crashing due to using all the stack on recursion, we just
generate infinite output.
> While the probe's trace data would include the efforts of the probe
> system, it should not *exclude* others.
Of course not. However, an infinite loop printing unwanted data does
have that effect.
I'm going to check in a change to not print data generated by stpd. You
could still collect statistics on it.
Martin