1. 09 10月, 2013 1 次提交
  2. 08 8月, 2013 1 次提交
  3. 13 7月, 2013 1 次提交
  4. 09 7月, 2013 1 次提交
  5. 28 5月, 2013 1 次提交
  6. 22 3月, 2013 1 次提交
  7. 16 3月, 2013 1 次提交
  8. 25 1月, 2013 2 次提交
  9. 29 10月, 2012 2 次提交
  10. 25 10月, 2012 1 次提交
    • A
      perf trace: Support interrupted syscalls · 752fde44
      Arnaldo Carvalho de Melo 提交于
      Using the same strategies as in the tmp.perf/trace2, i.e. the 'trace'
      tool implemented by tglx, just updated to the current codebase.
      
      Example:
      
      [root@sandy linux]# perf trace usleep 1  | tail
           2.003: mmap(addr: 0, len: 4096, prot: 3, flags: 34, fd: 4294967295, off: 0   ) = -2128396288
           2.017: mmap(addr: 0, len: 4096, prot: 3, flags: 34, fd: 4294967295, off: 0   ) = -2128400384
           2.029: arch_prctl(option: 4098, arg2: 140146949441280, arg3: 140146949435392, arg4: 34, arg5: 4294967295) = 0
           2.084: mprotect(start: 208741634048, len: 16384, prot: 1                     ) = 0
           2.098: mprotect(start: 208735956992, len: 4096, prot: 1                      ) = 0
           2.122: munmap(addr: 140146949447680, len: 91882                              ) = 0
           2.359: brk(brk: 0                                                            ) = 28987392
           2.371: brk(brk: 29122560                                                     ) = 29122560
           2.490: nanosleep(rqtp: 140735694241504, rmtp: 0                              ) = 0
           2.507: exit_group(error_code: 0
      [root@sandy linux]#
      
      For now the timestamp and duration are always on, will be selectable.
      
      Also if multiple threads are being monitored, its tid will appear.
      
      The ret output continues to be interpreted a la strace.
      
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Namhyung Kim <namhyung@gmail.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Link: http://lkml.kernel.org/n/tip-ly9ulroru4my5isn0xe9gr0m@git.kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      752fde44
  11. 07 10月, 2012 1 次提交
  12. 11 9月, 2012 1 次提交
    • I
      perf tools: include wrapper for magic.h · f8fcd776
      Irina Tirdea 提交于
      perf is currently including magic.h directly from the kernel. If the
      glibc magic.h is also included, this leads to warnings that the
      constants are redefined. This happens on some systems (e.g. Android).
      
      Redefinition errors on Android:
      In file included from util/util.h:79:0,
                       from util/cache.h:5,
                       from util/abspath.c:1:
      util/../../../include/linux/magic.h:5:0:
      error: "AFFS_SUPER_MAGIC" redefined [-Werror]
      bionic/libc/include/sys/vfs.h:53:0:
      note: this is the location of the previous definition
      util/../../../include/linux/magic.h:19:0:
      error: "EFS_SUPER_MAGIC" redefined [-Werror]
      bionic/libc/include/sys/vfs.h:61:0:
      note: this is the location of the previous definition
      util/../../../include/linux/magic.h:26:0:
      error: "HPFS_SUPER_MAGIC" redefined [-Werror]
      bionic/libc/include/sys/vfs.h:67:0:
      note: this is the location of the previous definition
      
      Only two constants from magic.h are used by perf (DEBUGFS_MAGIC and
      SYSFS_MAGIC). This fix provides a wrapper for magic.h that includes only
      these constants instead of including the kernel header file directly.
      Signed-off-by: NIrina Tirdea <irina.tirdea@intel.com>
      Acked-by: NPekka Enberg <penberg@kernel.org>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Irina Tirdea <irina.tirdea@intel.com>
      Cc: Namhyung Kim <namhyung.kim@lge.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Link: http://lkml.kernel.org/r/1347315303-29906-2-git-send-email-irina.tirdea@intel.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      f8fcd776
  13. 06 9月, 2012 1 次提交
  14. 08 8月, 2012 1 次提交
  15. 20 6月, 2012 1 次提交
  16. 08 5月, 2012 1 次提交
  17. 03 5月, 2012 2 次提交
  18. 20 4月, 2012 1 次提交
  19. 14 2月, 2012 2 次提交
  20. 31 1月, 2012 1 次提交
    • D
      perf tools: Fix broken build by defining _GNU_SOURCE in Makefile · 0a84f007
      David Daney 提交于
      When building on my Debian/mips system, util/util.c fails to build
      because commit 1aed2671 (perf kvm: Do
      guest-only counting by default) indirectly includes stdio.h before the
      feature selection in util.h is done.  This prevents _GNU_SOURCE in
      util.h from enabling the declaration of getline(), from now second
      inclusion of stdio.h, and the build is broken.
      
      There is another breakage in util/evsel.c caused by include ordering,
      but I didn't fully track down the commit that caused it.
      
      The root cause of all this is an inconsistent definition of _GNU_SOURCE,
      so I move the definition into the Makefile so that it is passed to all
      invocations of the compiler and used uniformly for all system header
      files.  All other #define and #undef of _GNU_SOURCE are removed as they
      cause conflicts with the definition passed to the compiler.
      
      All the features.h definitions (_LARGEFILE64_SOURCE _FILE_OFFSET_BITS=64
      and _GNU_SOURCE) are needed by the python glue code too, so they are
      moved to BASIC_CFLAGS, and the misleading comments about BASIC_CFLAGS
      are removed.
      
      This gives me a clean build on x86_64 (fc12) and mips (Debian).
      
      Cc: David Daney <david.daney@cavium.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Joerg Roedel <joerg.roedel@amd.com>
      Cc: Namhyung Kim <namhyung.kim@lge.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1326836461-11952-1-git-send-email-ddaney.cavm@gmail.comSigned-off-by: NDavid Daney <david.daney@cavium.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      0a84f007
  21. 25 1月, 2012 2 次提交
    • D
      perf tools: Fix broken build by defining _GNU_SOURCE in Makefile · 2ef1ea38
      David Daney 提交于
      When building on my Debian/mips system, util/util.c fails to build
      because commit 1aed2671 (perf kvm: Do
      guest-only counting by default) indirectly includes stdio.h before the
      feature selection in util.h is done.  This prevents _GNU_SOURCE in
      util.h from enabling the declaration of getline(), from now second
      inclusion of stdio.h, and the build is broken.
      
      There is another breakage in util/evsel.c caused by include ordering,
      but I didn't fully track down the commit that caused it.
      
      The root cause of all this is an inconsistent definition of _GNU_SOURCE,
      so I move the definition into the Makefile so that it is passed to all
      invocations of the compiler and used uniformly for all system header
      files.  All other #define and #undef of _GNU_SOURCE are removed as they
      cause conflicts with the definition passed to the compiler.
      
      All the features.h definitions (_LARGEFILE64_SOURCE _FILE_OFFSET_BITS=64
      and _GNU_SOURCE) are needed by the python glue code too, so they are
      moved to BASIC_CFLAGS, and the misleading comments about BASIC_CFLAGS
      are removed.
      
      This gives me a clean build on x86_64 (fc12) and mips (Debian).
      
      Cc: David Daney <david.daney@cavium.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Joerg Roedel <joerg.roedel@amd.com>
      Cc: Namhyung Kim <namhyung.kim@lge.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1326836461-11952-1-git-send-email-ddaney.cavm@gmail.comSigned-off-by: NDavid Daney <david.daney@cavium.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      2ef1ea38
    • A
      perf tools: Introduce per user view · 0d37aa34
      Arnaldo Carvalho de Melo 提交于
      The new --uid command line option will show only the tasks for a given
      user, using the proc interface to figure out the existing tasks.
      
      Kernel work is needed to close races at startup, but this should already
      be useful in many use cases.
      
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Link: http://lkml.kernel.org/n/tip-bdnspm000gw2l984a2t53o8z@git.kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      0d37aa34
  22. 07 1月, 2012 1 次提交
  23. 24 12月, 2011 1 次提交
  24. 16 7月, 2011 1 次提交
  25. 18 2月, 2011 1 次提交
    • M
      perf tools: Makefile: Remove platform-specific cruft · 8796cb9d
      Michael Witten 提交于
      While it makes sense that this tool could be used on
      other platforms at least to parse data, there doesn't
      appear to be any real support for such usage.
      
      This commit squashes several commits that remove:
      
       SNPRINTF_RETURNS_BOGUS
       FREAD_READS_DIRECTORIES
       NO_D_{INO,TYPE}_IN_DIRENT
       NO_STRCASESTR
       NO_MEMMEM
       NO_STRTOUMAX and NO_STRTOULL
       NO_SETENV
       NO_UNSETENV
       NO_MKDTEMP
       NEEDS_LIBICONV
       NEEDS_SOCKET
       NO_MMAP
       NO_PTHREADS
       NO_PREAD
       NO_TRUSTABLE_FILEMODE
       NO_IPV6 and NO_SOCKADDR_STORAGE
       NO_ICONV and OLD_ICONV
       NO_NSEC, USE_NSEC, and USE_ST_TIMESPEC
       NO_ST_BLOCKS_IN_STRUCT_STAT
       NO_FINK and NO_DARWIN_PORTS
       NO_SYS_SELECT_H
       NO_HSTRERROR
       DIR_HAS_BSD_GROUP_SEMANTICS and FORCE_DIR_SET_GID
       NEEDS_NSL, NO_UINTMAX_T, NO_INET_{N,P}TON
       COMPAT_{CFLAGS,OBJS}
       Executable extension `X'
      Signed-off-by: NMichael Witten <mfwitten@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      8796cb9d
  26. 04 1月, 2011 1 次提交
    • A
      perf util: Move do_read from session to util · 1e7972cc
      Arnaldo Carvalho de Melo 提交于
      Not really something to be exported from session.c. Rename it to
      'readn' as others did in the past.
      
      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>
      1e7972cc
  27. 20 8月, 2010 1 次提交
  28. 17 6月, 2010 1 次提交
    • S
      perf record: Add option to avoid updating buildid cache · a1ac1d3c
      Stephane Eranian 提交于
      There are situations where there is enough information in the perf.data
      to process the samples. Updating the buildid cache may add unecessary
      overhead in terms of disk space and time (copying large elf images).
      
      A persistent option to do this already exists via the perfconfig file,
      simply do:
      
      [buildid]
      dir = /dev/null
      
      This patch provides a way to suppress builid cache updates on a per-run
      basis.  It addds a new option, -N, to perf record. Buildids are still
      generated in the perf.data file.
      
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Frédéric Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      LKML-Reference: <4c19ef89.93ecd80a.40dc.fffff8e9@mx.google.com>
      Signed-off-by: NStephane Eranian <eranian@google.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      a1ac1d3c
  29. 05 6月, 2010 1 次提交
    • S
      perf buildid: add perfconfig option to specify buildid cache dir · 45de34bb
      Stephane Eranian 提交于
      This patch adds the ability to specify an alternate directory to store the
      buildid cache (buildids, copy of binaries). By default, it is hardcoded to
      $HOME/.debug. This directory contains immutable data. The layout of the
      directory is such that no conflicts in filenames are possible. A modification
      in a file, yields a different buildid and thus a different location in the
      subdir hierarchy.
      
      You may want to put the buildid cache elsewhere because of disk space
      limitation or simply to share the cache between users. It is also useful for
      remote collect vs. local analysis of profiles.
      
      This patch adds a new config option to the perfconfig file.  Under the tag
      'buildid', there is a dir option. For instance, if you have:
      
      $ cat /etc/perfconfig
      [buildid]
      dir = /var/cache/perf-buildid
      
      All buildids and binaries are be saved in the directory specified. The perf
      record, buildid-list, buildid-cache, report, annotate, and archive commands
      will it to pull information out.
      
      The option can be set in the system-wide perfconfig file or in the
      $HOME/.perfconfig file.
      
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Frédéric Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      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: <4c055fb7.df0ce30a.5f0d.ffffae52@mx.google.com>
      Signed-off-by: NStephane Eranian <eranian@google.com>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      45de34bb
  30. 22 5月, 2010 1 次提交
    • A
      perf annotate: Add TUI interface · 46e3e055
      Arnaldo Carvalho de Melo 提交于
      When annotating multiple entries, for instance, when running simply as:
      
      $ perf annotate
      
      the right and left keys, as well as TAB can be used to cycle thru the
      multiple symbols being annotated.
      
      If one doesn't like TUI annotate, disable it by editing ~/.perfconfig
      and adding:
      
      [tui]
      
      	annotate = off
      
      Just like it is possible for report.
      
      Cc: Frédéric 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>
      46e3e055
  31. 19 5月, 2010 2 次提交
    • A
      perf tools: remove xstrndup, xmalloc, xzalloc · 151f85a4
      Arnaldo Carvalho de Melo 提交于
      All the functions that call this can handle the equivalent, non
      panic'ing wrapped routines.
      
      Cc: Frédéric 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: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      151f85a4
    • A
      perf tools: Remove some unused functions · a41794cd
      Arnaldo Carvalho de Melo 提交于
      Without the bloated cplus_demangle from binutils, i.e building with:
      
      $ make NO_DEMANGLE=1 O=~acme/git/build/perf -j3 -C tools/perf/ install
      
      Before:
      
         text	   data	    bss	    dec	    hex	filename
       471851	  29280	4025056	4526187	 45106b	/home/acme/bin/perf
      
      After:
      
      [acme@doppio linux-2.6-tip]$ size ~/bin/perf
         text	   data	    bss	    dec	    hex	filename
       446886	  29232	4008576	4484694	 446e56	/home/acme/bin/perf
      
      So its a 5.3% size reduction in code, but the interesting part is in the git
      diff --stat output:
      
       19 files changed, 20 insertions(+), 1909 deletions(-)
      
      If we ever need some of the things we got from git but weren't using, we just
      have to go to the git repo and get fresh, uptodate source code bits.
      
      Cc: Frédéric 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: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      a41794cd
  32. 15 5月, 2010 1 次提交
    • A
      perf report: Report number of events, not samples · c82ee828
      Arnaldo Carvalho de Melo 提交于
      Number of samples is meaningless after we switched to auto-freq, so
      report the number of events, i.e. not the sum of the different periods,
      but the number PERF_RECORD_SAMPLE emitted by the kernel.
      
      While doing this I noticed that naming "count" to the sum of all the
      event periods can be confusing, so rename it to .period, just like in
      struct sample.data, so that we become more consistent.
      
      This helps with the next step, that was to record in struct hist_entry
      the number of sample events for each instance, we need that because we
      use it to generate the number of events when applying filters to the
      tree of hist entries like it is being done in the TUI report browser.
      Suggested-by: NIngo Molnar <mingo@elte.hu>
      Cc: Frédéric 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: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <new-submission>
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      c82ee828
  33. 03 4月, 2010 1 次提交
  34. 17 3月, 2010 1 次提交
    • M
      perf tools: Introduce xzalloc() for detecting out of memory conditions · a1d37d52
      Masami Hiramatsu 提交于
      Introducing xzalloc() which wrapping zalloc() for detecting out
      of memory conditions.
      Signed-off-by: NMasami Hiramatsu <mhiramat@redhat.com>
      Cc: systemtap <systemtap@sources.redhat.com>
      Cc: DLE <dle-develop@lists.sourceforge.net>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      LKML-Reference: <20100316220521.32050.85155.stgit@localhost6.localdomain6>
      [ -v2: small cleanups in surrounding code ]
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      a1d37d52