On Fri, 17 Jul 2020 21:26:50 +0800
Changbin Du <changbin...@gmail.com> wrote:

> On Thu, Jul 16, 2020 at 12:36:30PM -0300, Arnaldo Carvalho de Melo wrote:
> > Em Sat, Jul 11, 2020 at 08:40:21PM +0800, Changbin Du escreveu:  
> > > This allows us to trace single thread instead of the whole process.
> > > 
> > > Signed-off-by: Changbin Du <changbin...@gmail.com>
> > > ---
> > >  tools/perf/Documentation/perf-ftrace.txt | 4 ++++
> > >  tools/perf/builtin-ftrace.c              | 2 ++
> > >  2 files changed, 6 insertions(+)
> > > 
> > > diff --git a/tools/perf/Documentation/perf-ftrace.txt 
> > > b/tools/perf/Documentation/perf-ftrace.txt
> > > index d79560dea19f..e204bf6d50d8 100644
> > > --- a/tools/perf/Documentation/perf-ftrace.txt
> > > +++ b/tools/perf/Documentation/perf-ftrace.txt
> > > @@ -38,6 +38,10 @@ OPTIONS
> > >  --pid=::
> > >   Trace on existing process id (comma separated list).
> > >  
> > > +-t::
> > > +--tid=::
> > > + Trace on existing thread id (comma separated list).
> > > +  
> > 
> > 
> > Humm, I just  tried:
> > 
> > [root@five ~]# yes > /dev/null &
> > [1] 18265
> > [root@five ~]# perf ftrace --tid 18265
> > ^C[root@five ~]#
> > 
> > After waiting for a while, nothing, what am I doing wrong?
> >  
> I got it wrong. Currently ftrace only can filter by pid. If the pid is not
> the main thread it won't work.

Wait what?

The "pid" for ftrace is really a "task id" which is a thread id.

[root@bxtest ~]# yes > /dev/null &
[1] 6799
[root@bxtest ~]# trace-cmd record -e all -P 6799
Hit Ctrl^C to stop recording
^CCPU 0: 3573031 events lost
CPU0 data recorded at offset=0x838000
    627675136 bytes in size
CPU1 data recorded at offset=0x25ed1000
    0 bytes in size
CPU2 data recorded at offset=0x25ed1000
    0 bytes in size
CPU3 data recorded at offset=0x25ed1000
    0 bytes in size
CPU4 data recorded at offset=0x25ed1000
    0 bytes in size
CPU5 data recorded at offset=0x25ed1000
    0 bytes in size
CPU6 data recorded at offset=0x25ed1000
    0 bytes in size
CPU7 data recorded at offset=0x25ed1000
    0 bytes in size
[root@bxtest ~]# trace-cmd report | head 
CPU 1 is empty
CPU 2 is empty
CPU 3 is empty
CPU 4 is empty
CPU 5 is empty
CPU 6 is empty
CPU 7 is empty
cpus=8
             yes-6799  [000] 67825.580902: sys_exit:             NR 1 = 8192
             yes-6799  [000] 67825.580903: sys_exit_write:       0x2000


What's different about tid vs pid?

-- Steve



> 
> So this patch makes no sense. will drop this.
> 

Reply via email to