Re: [PATCH 4/5] perf trace: add pagefault statistics

From: Arnaldo Carvalho de Melo
Date: Thu Jun 26 2014 - 15:41:27 EST


Em Thu, Jun 26, 2014 at 08:14:27PM +0400, Stanislav Fomichev escreveu:
> 'perf trace' can show summary of events using -S option. This commit
> also reports number of major/minor pagefault events in this summary.
>
> Signed-off-by: Stanislav Fomichev <stfomichev@xxxxxxxxxxxxxx>

Where is it?

[root@zoo /]# perf trace -S -F all -- usleep 1 | tail -30
Failed to open /etc/ld.so.cache, continuing without symbols
1.241 ( 0.001 ms): brk( ) = 0x24c9000
1.245 ( 0.003 ms): brk(brk: 0x24ea000 ) = 0x24ea000
1.248 ( 0.001 ms): brk( ) = 0x24ea000
1.253 ( 0.000 ms): minfault [_int_malloc+0x116a] => [heap]@0x24c9008 (d.)
1.268 ( 0.000 ms): minfault [__GI_____strtoull_l_internal+0x47] => /usr/lib64/libc-2.18.so@0x164ae3 (x.)
1.273 ( 0.000 ms): minfault [__GI___libc_nanosleep+0x0] => /usr/lib64/libc-2.18.so@0xbc960 (x.)
1.336 ( 0.062 ms): nanosleep(rqtp: 0x7fff30ccf640 ) = 0
1.344 ( 0.000 ms): exit_group(

Summary of events:

usleep (19155), 151 events, 84.4%, 0:68 faults, 0.000 msec

syscall calls min avg max stddev
(msec) (msec) (msec) (%)
--------------- -------- --------- --------- --------- ------
read 3 0.000 0.002 0.003 50.38%
open 3 0.006 0.007 0.008 8.51%
close 3 0.001 0.001 0.002 6.05%
fstat 3 0.001 0.002 0.002 7.70%
mmap 9 0.003 0.005 0.006 9.56%
mprotect 6 0.004 0.007 0.010 14.12%
munmap 1 0.013 0.013 0.013 0.00%
brk 4 0.001 0.002 0.003 28.94%
access 1 0.007 0.007 0.007 0.00%
nanosleep 1 0.062 0.062 0.062 0.00%
execve 7 0.000 0.086 0.574 94.41%
arch_prctl 1 0.002 0.002 0.002 0.00%


[root@zoo /]#

-----------------------------------------

There were minor page faults, were in the summary are they?

I haven't even looked at the code, first I wanted to check if just doing what
is expected would work, i.e. enable all the page fault types, run a workload,
ask for -S and check if there were any stats for major and minor page faults.

I can update the changelog comment with an example if you tell me what I am
doing wrong.

Applied and tested the previous patches.

- Arnaldo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/