This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]