Re: Why return probes of some syscalls sometimes are not called?

Steven Rostedt <[email protected]>
Newsgroups org.kernel.vger.linux-trace-users
Message-ID <[email protected]>
On Thu, 9 Mar 2017 15:30:42 +0000
"Dorau, Lukasz" <[email protected]> wrote:

> On Thursday, March 9, 2017 4:21 PM Steven Rostedt wrote:
> > On Thu, 9 Mar 2017 15:01:38 +0000 (UTC)
> > Mathieu Desnoyers <[email protected]> wrote:
> > 
> >   
> > > Another more likely scenario is if a multithreaded process
> > > has many threads blocked (e.g. on a futex), and one of the threads
> > > exits cleanly or forks. I suspect the kernel will just tear down the
> > > other threads without hitting syscall exit.  
> > 
> > Maybe, if this happens multiple times, it could cause those kinds of
> > numbers. A fork was done zero times according to the numbers. Maybe
> > exit should be measured too.
> >   
> 
> I have run the test again with exit:
> 
> Results (60 sec):
> futex:       p 2968     r 401      (86% did not return (2567))
> poll:        p 13251    r 3957     (70% did not return (9294))
> epoll_wait:  p 1485     r 556      (62% did not return (929))
> select:      p 8063     r 8066     (OK)
> fork:        p 0        r 0        (OK)
> vfork:       p 4        r 4        (OK)
> clone:       p 6962     r 6962     (OK)
> exit:        p 3        r 0        (100% did not return (3))

I expected exit not to have a return, that's the property of exit. But
it shows that the above poll and friends is not because of exit and
fork.

Can you change your script to use syscall tracepoints instead of
retprobes?

-- Steve

> mmap:        p 71740    r 71740    (OK)
> open:        p 43822    r 43825    (OK)
> close:       p 79805    r 79806    (OK)
> write:       p 31080    r 31078    (0% did not return (2))
> read:        p 108456   r 108449   (0% did not return (7))
> 
> Lukasz
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.