Em Thu, Dec 17, 2015 at 04:56:31PM +0900, Namhyung Kim escreveu: > Hi Arnaldo, > > On Wed, Dec 16, 2015 at 09:17:59PM -0300, Arnaldo Carvalho de Melo wrote: > > Em Wed, Dec 16, 2015 at 12:35:33AM +0900, Namhyung Kim escreveu: > > > Hello, > > > > > > This is an attempt to improve perf to deal with tracepoint events > > > better. The perf tools can handle tracepoint events but perf report > > > on them is less useful since they're always sampled in a fixed > > > location and not provide event specific info. We can use perf script > > > but I always wishes there's more convenient way to see the result. > > > > > > * changes in v2) > > > - add 'trace' sort key and make it default (Jiri) > > > - add '--raw-trace' option and '/raw' field modifier (Jiri) > > > - support event name shortcuts (David) > > > > Can you take a look if you can reproduce this? Without callchains it works > > in > > all tests I did. > > Argh, it was because I forgot to set raw_data/size field for > --children case. I'll send the fix soon. > > Maybe we can disable --children for tracepoint sessions (or if it > doesn't have symbol sort key)?
Looks like a plan, unless we want to have all the callchains that get to some specific DSO or pid. - Arnaldo > Thanks, > Namhyung > > > > > > [root@zoo ~]# perf record -g -e kmem:kmalloc -a > > ^C[ perf record: Woken up 1 times to write data ] > > [ perf record: Captured and wrote 1.193 MB perf.data (250 samples) ] > > > > [root@zoo ~]# perf report > > perf: Segmentation fault > > -------- backtrace -------- > > perf[0x539f1b] > > /lib64/libc.so.6(+0x34960)[0x7fc8e3752960] > > perf(pevent_read_number+0x78)[0x542e40] > > perf(pevent_read_number_field+0x70)[0x542ed3] > > /root/.traceevent/plugins/plugin_kmem.so(+0x603)[0x7fc8e1a6c603] > > perf(pevent_event_info+0x96)[0x547597] > > perf[0x4dce26] > > perf[0x4e0e89] > > perf(hist_entry_iter__add+0xee)[0x4e125e] > > perf[0x4304be] > > perf[0x4c2db3] > > perf[0x4c3301] > > perf[0x4c6089] > > perf(perf_session__process_events+0x3f1)[0x4c4b91] > > perf(cmd_report+0x120b)[0x4319cb] > > perf[0x47c871] > > perf(main+0x63f)[0x42242f] > > /lib64/libc.so.6(__libc_start_main+0xf0)[0x7fc8e373dfe0] > > perf[0x422549] > > [0x0] > > [root@zoo ~]# ls -la ~/.traceevent/ > > total 12 > > drwxr-xr-x. 3 acme acme 4096 May 4 2015 . > > drwx------. 61 acme acme 4096 Dec 16 21:12 .. > > drwxr-xr-x. 2 acme acme 4096 Nov 23 11:15 plugins > > [root@zoo ~]# ls -la ~/.traceevent > > lrwxrwxrwx. 1 root root 23 May 4 2015 /root/.traceevent -> > > /home/acme/.traceevent/ > > [root@zoo ~]# perf record -e sched:sched_switch -a > > > > > > ^C[ perf record: Woken up 1 times to write data ] > > [ perf record: Captured and wrote 1.704 MB perf.data (4967 samples) ] > > > > [root@zoo ~]# perf report > > [root@zoo ~]# perf record -g -e sched:sched_switch -a > > ^C[ perf record: Woken up 2 times to write data ] > > [ perf record: Captured and wrote 2.062 MB perf.data (4743 samples) ] > > > > [root@zoo ~]# perf report > > perf: Segmentation fault > > -------- backtrace -------- > > perf[0x539f1b] > > /lib64/libc.so.6(+0x34960)[0x7fecb3223960] > > perf(pevent_read_number+0x60)[0x542e28] > > perf(pevent_read_number_field+0x70)[0x542ed3] > > perf(get_field_val+0x6b)[0x548cd5] > > perf(pevent_get_field_val+0x6b)[0x548e77] > > /root/.traceevent/plugins/plugin_sched_switch.so(+0x95b)[0x7fecb194195b] > > perf(pevent_event_info+0x96)[0x547597] > > perf[0x4dce26] > > perf[0x4e0e89] > > perf(hist_entry_iter__add+0xee)[0x4e125e] > > perf[0x4304be] > > perf[0x4c2db3] > > perf[0x4c3301] > > perf[0x4c5fdb] > > perf[0x4c3535] > > perf(perf_session__process_events+0x3a0)[0x4c4b40] > > perf(cmd_report+0x120b)[0x4319cb] > > perf[0x47c871] > > perf(main+0x63f)[0x42242f] > > /lib64/libc.so.6(__libc_start_main+0xf0)[0x7fecb320efe0] > > perf[0x422549] > > [0x0] > > [root@zoo ~]# > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

