1. 03 1月, 2011 1 次提交
    • F
      perf: Fix callchain hit bad cast on ascii display · d425de54
      Frederic Weisbecker 提交于
      ipchain__fprintf_graph() casts the number of hits in a branch as an
      int, which means we lose its highests bits.
      
      This results in meaningless number of callchain hits in perf.data
      that have a high number of hits recorded, typically those that have
      callchain branches hits appearing more than INT_MAX. This happens
      easily as those are pondered by the event period.
      Reported-by: NNick Piggin <npiggin@kernel.dk>
      Signed-off-by: NFrederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Paul Mackerras <paulus@samba.org>
      d425de54
  2. 22 12月, 2010 2 次提交
    • M
      perf probe: Fix to support libdwfl older than 0.148 · 3b4694de
      Masami Hiramatsu 提交于
      Since the libdwfl library before 0.148 fails to analyze live kernel debuginfo,
      'perf probe --list' compiled with those old libdwfl sometimes crashes.
      
      To avoid that bug, perf probe does not use libdwfl's live kernel analysis
      routine when it is compiled with older libdwfl.
      
      Side effect: perf with older libdwfl doesn't support listing probe in modules
      with source code line. Those could be shown by symbol+offset.
      
      Cc: 2nddept-manager@sdl.hitachi.co.jp
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      LKML-Reference: <20101217131218.24123.62424.stgit@ltc236.sdl.hitachi.co.jp>
      Signed-off-by: NMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      3b4694de
    • M
      perf tools: Fix lazy wildcard matching · ea187cfb
      Masami Hiramatsu 提交于
      Fix lazy wildcard matching to ignore space after wild card.
      
      Cc: 2nddept-manager@sdl.hitachi.co.jp
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Hitoshi Mitake <mitake@dcl.info.waseda.ac.jp>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      LKML-Reference: <20101217131200.24123.8202.stgit@ltc236.sdl.hitachi.co.jp>
      Signed-off-by: NMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      ea187cfb
  3. 16 12月, 2010 4 次提交
  4. 07 12月, 2010 1 次提交
    • A
      perf record: Fix eternal wait for stillborn child · 18483b81
      Arnaldo Carvalho de Melo 提交于
      When execvp fails to find the specified command on the path we won't get
      SIGCHLD, so send a SIGUSR1 and exit right away.
      
      Current situation would require a SIGINT performed by the user and would
      produce meaningless summary.
      
      Now:
      
      [acme@emilia linux]$ ./foo
      -bash: ./foo: No such file or directory
      [acme@emilia linux]$ perf record ./foo
      ./foo: No such file or directory
      [acme@emilia linux]$
      Acked-by: NThomas Gleixner <tglx@linutronix.de>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      18483b81
  5. 01 12月, 2010 3 次提交
    • F
      perf header: Don't assume there's no attr info if no sample ids is provided · 60e67737
      Franck Bui-Huu 提交于
      This primarily fixes perf-report, which didn't report the correct type
      of event if perf-record was called to record one event different from
      'cycles':
      
        $ perf record -e instructions true
          [ perf record: Woken up 1 times to write data ]
          [ perf record: Captured and wrote 0.007 MB perf.data (~295 samples) ]
      
        $ perf report | head -n1
          # Events: 7  cycles
      
      LPU-Reference: <m3mxor6nex.fsf@gmail.com>
      Signed-off-by: NFranck Bui-Huu <fbuihuu@gmail.com>
      60e67737
    • M
      perf symbols: Figure out start address of kernel map from kallsyms · d214afbd
      Ming Lei 提交于
      On ARM, module symbol start address is ahead of kernel symbol start address, so
      we can't suppose that the start address of kernel map always is zero, otherwise
      may cause incorrect .start and .end of kernel map (caused by fixup) when there
      are modules loaded, then map_groups__find may return incorrect map for symbol
      query.
      
      This patch always figures out the start address of kernel map from
      /proc/kallsyms if the file is available, so fix the issues on ARM for module
      loaded case.
      
      This patch fixes the following issues on ARM when modules are loaded:
      
      	- vmlinux symbol can't be found by kallsyms maps doing 'perf test'
      	- module symbols are parsed mistakenlly when doing 'perf top'/'perf report'
      
      Cc: Ian Munsie <imunsie@au1.ibm.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <20101125192725.62d31b42@tom-lei>
      Signed-off-by: NMing Lei <tom.leiming@gmail.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      d214afbd
    • A
      perf symbols: Fix kallsyms kernel/module map splitting · 8a953312
      Arnaldo Carvalho de Melo 提交于
      On ARM, module addresss space is ahead of kernel space, so the module
      symbols are handled before kernel symbol in dso__split_kallsyms, then
      was causing one map to be created for each kernel symbol.
      Reported-by: NMing Lei <tom.leiming@gmail.com>
      Tested-by: NMing Lei <tom.leiming@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Ming Lei <tom.leiming@gmail.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <20101124144540.GB15875@ghostprotocols.net>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      8a953312
  6. 24 11月, 2010 1 次提交
    • R
      perf symbols: Remove incorrect open-coded container_of() · 02a9d037
      Rabin Vincent 提交于
      At least on ARM, padding is inserted between rb_node and sym in struct
      symbol_name_rb_node, causing "((void *)sym) - sizeof(struct rb_node)" to
      point inside rb_node rather than to the symbol_name_rb_node.  Fix this
      by converting the code to use container_of().
      
      Cc: Ian Munsie <imunsie@au1.ibm.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Ming Lei <tom.leiming@gmail.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <20101123163106.GA25677@debian>
      Signed-off-by: NRabin Vincent <rabin@rab.in>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      02a9d037
  7. 23 11月, 2010 1 次提交
    • A
      perf record: Handle restrictive permissions in /proc/{kallsyms,modules} · c1a3a4b9
      Arnaldo Carvalho de Melo 提交于
      The 59365d13 commit, even being reverted by 33e0d57f, showed a non robust
      behavior in 'perf record': it really should just warn the user that some
      functionality will not be available.
      
      The new behavior then becomes:
      
      	[acme@felicio linux]$ ls -la /proc/{kallsyms,modules}
      	-r-------- 1 root root 0 Nov 22 12:19 /proc/kallsyms
      	-r-------- 1 root root 0 Nov 22 12:19 /proc/modules
      	[acme@felicio linux]$ perf record ls -R > /dev/null
      	Couldn't record kernel reference relocation symbol
      	Symbol resolution may be skewed if relocation was used (e.g. kexec).
      	Check /proc/kallsyms permission or run as root.
      	[ perf record: Woken up 1 times to write data ]
      	[ perf record: Captured and wrote 0.004 MB perf.data (~161 samples) ]
      	[acme@felicio linux]$ perf report --stdio
      	[kernel.kallsyms] with build id 77b05e00e64e4de1c9347d83879779b540d69f00 not found, continuing without symbols
      	# Events: 98  cycles
      	#
      	# Overhead  Command    Shared Object                Symbol
      	# ........  .......  ...............  ....................
      	#
      	    48.26%       ls  [kernel]         [k] ffffffff8102b92b
      	    22.49%       ls  libc-2.12.90.so  [.] __strlen_sse2
      	     8.35%       ls  libc-2.12.90.so  [.] __GI___strcoll_l
      	     8.17%       ls  ls               [.]            11580
      	     3.35%       ls  libc-2.12.90.so  [.] _IO_new_file_xsputn
      	     3.33%       ls  libc-2.12.90.so  [.] _int_malloc
      	     1.88%       ls  libc-2.12.90.so  [.] _int_free
      	     0.84%       ls  libc-2.12.90.so  [.] malloc_consolidate
      	     0.84%       ls  libc-2.12.90.so  [.] __readdir64
      	     0.83%       ls  ls               [.] strlen@plt
      	     0.83%       ls  libc-2.12.90.so  [.] __GI_fwrite_unlocked
      	     0.83%       ls  libc-2.12.90.so  [.] __memcpy_sse2
      
      	#
      	# (For a higher level overview, try: perf report --sort comm,dso)
      	#
      [acme@felicio linux]$
      
      It still has the build-ids for DSOs in the maps with hits:
      
      [acme@felicio linux]$ perf buildid-list
      77b05e00e64e4de1c9347d83879779b540d69f00 [kernel.kallsyms]
      09c4a431a4a8b648fcfc2c2bdda70f56050ddff1 /bin/ls
      af75ea9ad951d25e0f038901a11b3846dccb29a4 /lib64/libc-2.12.90.so
      [acme@felicio linux]$
      
      That can be used in another machine to resolve kernel symbols.
      
      Cc: Eugene Teo <eugeneteo@kernel.org>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Jesper Juhl <jj@chaosbits.net>
      Cc: Marcus Meissner <meissner@suse.de>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Sarah Sharp <sarah.a.sharp@linux.intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tejun Heo <tj@kernel.org>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      c1a3a4b9
  8. 10 11月, 2010 9 次提交
  9. 06 11月, 2010 1 次提交
  10. 27 10月, 2010 3 次提交
    • A
      perf python scripting: Add futex-contention script · 00204c33
      Arnaldo Carvalho de Melo 提交于
      The equivalent to this SystemTAP script:
      
      http://sourceware.org/systemtap/wiki/WSFutexContention
      
      [root@doppio ~]# perf trace futex-contention
      Press control+C to stop and show the summary
      ^Cnpviewer.bin[15242] lock 7f0a8be19104 contended 29 times, 72806 avg ns
      npviewer.bin[15242] lock 7f0a8be19130 contended 2 times, 1355 avg ns
      synergyc[17245] lock f127f4 contended 1 times, 1830569 avg ns
      firefox[15116] lock 7f2b7238af0c contended 168 times, 1230390 avg ns
      synergyc[17245] lock f2fc20 contended 1 times, 33149 avg ns
      npviewer.bin[15255] lock 7f0a8be19074 contended 155 times, 73047 avg ns
      npviewer.bin[15255] lock 7f0a8be190a0 contended 127 times, 7088 avg ns
      synergyc[17247] lock f12854 contended 1 times, 46741 avg ns
      synergyc[17245] lock f12610 contended 1 times, 7358 avg ns
      [root@doppio ~]#
      
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      00204c33
    • A
      perf python scripting: Fixup cut'n'paste error in sctop script · 22d0594b
      Arnaldo Carvalho de Melo 提交于
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      22d0594b
    • A
      perf scripting: Shut up 'perf record' final status · b44308f5
      Arnaldo Carvalho de Melo 提交于
      We want just the script output, not internal details about the record phase.
      
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      b44308f5
  11. 26 10月, 2010 6 次提交
    • M
      perf record: Remove newline character from perror() argument · 0ab7368f
      Matt Fleming 提交于
      If we include a newline character in the string argument to perror()
      then the output will be split across two lines like so,
      
          Unable to read perf file descriptor
          : No space left on device
      
      Deleting the newline character prints a much more readable error,
      
          Unable to read perf file descriptor: No space left on device
      
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <89e77b54659bc3798b23a5596c2debb7f6f4cf27.1283010281.git.matt@console-pimps.org>
      Signed-off-by: NMatt Fleming <matt@console-pimps.org>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@felicio.ghostprotocols.net>
      0ab7368f
    • A
      perf python scripting: Support fedora 11 (audit 1.7.17) · 7f6c1bd5
      Arnaldo Carvalho de Melo 提交于
      Where we don't have the audit.MACH_ARMEB constant.
      
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      7f6c1bd5
    • A
      perf python scripting: Improve the syscalls-by-pid script · a64fa198
      Arnaldo Carvalho de Melo 提交于
      . Print message at script start telling how to get te summary
      . Print the syscall names
      . Accept both pid (if numeric) or COMM name
      
      Now it looks like this:
      
      [root@emilia tmp]# perf trace syscall-counts-by-pid
      Press control+C to stop and show the summary
      ^C
      syscall events by comm/pid:
      
      comm [pid]/syscalls                            count
      ----------------------------------------  ----------
      
      automount [1670]
        futex                                            2
      
      sshd [2322]
        rt_sigprocmask                                   4
        select                                           2
        write                                            1
        read                                             1
      
      perf [15178]
        read                                          2506
        open                                           794
        close                                          769
        write                                          240
        getdents                                       112
        lseek                                           16
        stat                                             9
        perf_counter_open                                5
        fcntl                                            5
        mmap                                             5
        statfs                                           2
      
      perf [15179]
        read                                         56701
        open                                           499
        stat                                           176
        fstat                                          149
        close                                          109
        mmap                                            98
        brk                                             75
        rt_sigaction                                    66
        munmap                                          42
        mprotect                                        24
        lstat                                            7
        lseek                                            5
        getdents                                         4
        ioctl                                            3
        readlink                                         2
        futex                                            1
        statfs                                           1
        getegid                                          1
        geteuid                                          1
        getgid                                           1
        getuid                                           1
        getrlimit                                        1
        fcntl                                            1
        uname                                            1
        write                                            1
      [root@emilia tmp]# fg
      -bash: fg: current: no such job
      [root@emilia tmp]# perf trace syscall-counts-by-pid 2322
      Press control+C to stop and show the summary
      ^C
      syscall events by comm/pid:
      
      comm [pid]/syscalls                            count
      ----------------------------------------  ----------
      
      sshd [2322]
        rt_sigprocmask                                   4
        select                                           2
        write                                            1
        read                                             1
      [root@emilia tmp]# perf trace syscall-counts-by-pid sshd
      Press control+C to stop and show the summary
      ^C
      syscall events for sshd:
      
      comm [pid]/syscalls                            count
      ----------------------------------------  ----------
      
      sshd [2322]
        rt_sigprocmask                                   4
        select                                           2
        write                                            1
        read                                             1
      [root@emilia tmp]#
      
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      a64fa198
    • A
      perf python scripting: print the syscall name on sctop · 2e7d1e3f
      Arnaldo Carvalho de Melo 提交于
      [root@emilia tmp]# perf trace sctop 1
      syscall events:
      
      event                                          count
      ----------------------------------------  ----------
      read                                          215400
      futex                                           4029
      write                                            376
      brk                                               33
      rt_sigprocmask                                    24
      select                                            17
      lseek                                              2
      fsync                                              1
      ^C[root@emilia tmp]#
      
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      2e7d1e3f
    • A
      perf python scripting: Improve the syscalls-counts script · 6545aaa5
      Arnaldo Carvalho de Melo 提交于
      . Print message at script start telling how to get te summary
      . Print the syscall name
      
      Now it looks like this:
      
      [root@emilia ~]# perf trace syscall-counts
      Press control+C to stop and show the summary
      ^C
      syscall events:
      
      event                                          count
      ----------------------------------------  -----------
      read                                          102752
      open                                            1293
      close                                            878
      write                                            319
      stat                                             185
      fstat                                            149
      getdents                                         116
      mmap                                              98
      brk                                               80
      rt_sigaction                                      66
      munmap                                            42
      mprotect                                          24
      lseek                                             21
      lstat                                              7
      rt_sigprocmask                                     4
      futex                                              3
      statfs                                             3
      ioctl                                              3
      readlink                                           2
      select                                             2
      getegid                                            1
      geteuid                                            1
      getgid                                             1
      getuid                                             1
      getrlimit                                          1
      fcntl                                              1
      uname                                              1
      [root@emilia ~]#
      
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      6545aaa5
    • A
      perf python scripting: Improve the failed-syscalls-by-pid script · 6cc73614
      Arnaldo Carvalho de Melo 提交于
      . Print message at script start telling how to get te summary
      . Print the syscall name using the audit-lib-python package, if
        installed
      . Print the errno string
      . Accept both pid (if numeric) or COMM name
      
      Now it looks like this:
      
      [root@emilia ~]# perf trace failed-syscalls-by-pid
      Press control+C to stop and show the summary
      ^C
      syscall errors:
      
      comm [pid]                           count
      ------------------------------  ----------
      
      automount [1670]
        syscall: futex
          err = ETIMEDOUT                     39
      
      irqbalance [1462]
        syscall: openat
          err = ENOENT                         4
      
      perf [7888]
        syscall: lseek
          err = ESPIPE                         1
        syscall: open
          err = ENOENT                        24
      
      perf [7889]
        syscall: ioctl
          err = EINVAL                         1
        syscall: readlink
          err = EINVAL                         2
        syscall: open
          err = ENOENT                       389
        syscall: stat
          err = ENOENT                       141
        syscall: lseek
          err = ESPIPE                         3
      [root@emilia ~]#
      
      [root@emilia ~]# perf trace failed-syscalls-by-pid 1670
      Press control+C to stop and show the summary
      ^C
      syscall errors:
      
      comm [pid]                           count
      ------------------------------  ----------
      
      automount [1670]
        syscall: futex
          err = ETIMEDOUT                      2
      [root@emilia ~]#
      [root@emilia ~]#
      [root@emilia ~]#
      [root@emilia ~]# perf trace failed-syscalls-by-pid automount
      Press control+C to stop and show the summary
      ^C
      syscall errors for automount:
      
      comm [pid]                           count
      ------------------------------  ----------
      
      automount [1669]
        syscall: futex
          err = ETIMEDOUT                      1
      
      automount [1670]
        syscall: futex
          err = ETIMEDOUT                      5
      [root@emilia ~]#
      
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      6cc73614
  12. 24 10月, 2010 4 次提交
  13. 23 10月, 2010 1 次提交
    • A
      perf tools: Remove direct slang.h include · 8bfb5e7d
      Arnaldo Carvalho de Melo 提交于
      We wrap it in libslang.h because we need to deal with older slang release
      where HAVE_LONG_LONG is referenced as:
      
      So we need to define it.
      
      Noticed when rebuilding the perf tools on a RHEL5 machine.
      
      Cc: Frédéric Weisbecker <fweisbec@gmail.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Stephane Eranian <eranian@google.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      8bfb5e7d
  14. 22 10月, 2010 3 次提交
    • M
      perf probe: Add basic module support · 469b9b88
      Masami Hiramatsu 提交于
      Add basic module probe support on perf probe. This introduces "--module
      <MODNAME>" option to perf probe for putting probes and showing lines and
      variables in the given module.
      
      Currently, this supports only probing on running modules.  Supporting off-line
      module probing is the next step.
      
      e.g.)
      [show lines]
       # ./perf probe --module drm -L drm_vblank_info
      <drm_vblank_info:0>
            0  int drm_vblank_info(struct seq_file *m, void *data)
            1  {
                      struct drm_info_node *node = (struct drm_info_node *) m->private
            3         struct drm_device *dev = node->minor->dev;
       ...
      [show vars]
       # ./perf probe --module drm -V drm_vblank_info:3
      Available variables at drm_vblank_info:3
              @<drm_vblank_info+20>
                      (unknown_type)  data
                      struct drm_info_node*   node
                      struct seq_file*        m
      [put a probe]
       # ./perf probe --module drm drm_vblank_info:3 node m
      Add new event:
        probe:drm_vblank_info (on drm_vblank_info:3 with node m)
      
      You can now use it on all perf tools, such as:
      
              perf record -e probe:drm_vblank_info -aR sleep 1
      [list probes]
       # ./perf probe -l
      probe:drm_vblank_info (on drm_vblank_info:3@drivers/gpu/drm/drm_info.c with ...
      
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      LKML-Reference: <20101021101341.3542.71638.stgit@ltc236.sdl.hitachi.co.jp>
      Signed-off-by: NMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      469b9b88
    • M
      perf probe: Show accessible global variables · fb8c5a56
      Masami Hiramatsu 提交于
      Add --externs for allowing --vars to show accessible global (externally
      defined) variables from a given probe point too.
      
      This will give you a hint which globals can be accessible from the probe point.
      
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      LKML-Reference: <20101021101335.3542.31003.stgit@ltc236.sdl.hitachi.co.jp>
      Signed-off-by: NMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      fb8c5a56
    • M
      perf probe: Function style fix · c82ec0a2
      Masami Hiramatsu 提交于
      Just change the order of function arguments for ease of read; moving optional
      bool flag to the last.
      
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      LKML-Reference: <20101021101329.3542.51200.stgit@ltc236.sdl.hitachi.co.jp>
      Signed-off-by: NMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      c82ec0a2