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: utrace-based uprobes


> 
> > 
> > > +If the number of times a function is called does not match the
> > > +number of times it returns (e.g., if a function exits via longjmp()),
> > > +registering a return probe on that function may produce undesirable
> > > +results.
> > 
> > What do these undesirable results include
> 
> Returning to the wrong address.  For example, if A calls B, and you have
> uretprobes on both A and B, and B longjmps back into A, B's return
> address will be left atop that task's stack of return addresses.  So
> when A returns, it'll return using B's return address.

Isn't the behavior the same even without the return probes 
inserted on A and B?


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