1. 09 10月, 2013 2 次提交
  2. 04 10月, 2013 2 次提交
  3. 16 7月, 2013 2 次提交
  4. 09 7月, 2013 2 次提交
  5. 28 5月, 2013 1 次提交
  6. 01 4月, 2013 1 次提交
    • A
      perf tools: Add support for weight v7 (modified) · 05484298
      Andi Kleen 提交于
      perf record has a new option -W that enables weightened sampling.
      
      Add sorting support in top/report for the average weight per sample and the
      total weight sum. This allows to both compare relative cost per event
      and the total cost over the measurement period.
      
      Add the necessary glue to perf report, record and the library.
      
      v2: Merge with new hist refactoring.
      v3: Fix manpage. Remove value check.
      Rename global_weight to weight and weight to local_weight.
      v4: Readd sort keys to manpage
      v5: Move weight to end
      v6: Move weight to template
      v7: Rename weight key.
      
      Original patch from Andi modified by Stephane Eranian <eranian@google.com>
      to include ONLY the weight supporting code and apply to pristine 3.8.0-rc4.
      Signed-off-by: NAndi Kleen <ak@linux.intel.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Namhyung Kim <namhyung.kim@lge.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/1359040242-8269-6-git-send-email-eranian@google.com
      [ committer note: changed to cope with fc5871ed and the hists_link perf test entry ]
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      05484298
  7. 22 3月, 2013 1 次提交
  8. 16 3月, 2013 5 次提交
  9. 14 3月, 2013 1 次提交
  10. 01 2月, 2013 1 次提交
  11. 25 1月, 2013 6 次提交
  12. 12 12月, 2012 3 次提交
  13. 11 12月, 2012 1 次提交
  14. 15 11月, 2012 3 次提交
    • J
      perf tools: Ensure single disable call per event in record comand · 2711926a
      Jiri Olsa 提交于
      It's possible we issue the event disable ioctl multiple times until we
      read the final portion of the mmap buffer.
      
      Ensuring just single disable ioctl call for event, because there's no
      need to do that more than once.
      Signed-off-by: NJiri Olsa <jolsa@redhat.com>
      Acked-by: NNamhyung Kim <namhyung@kernel.org>
      Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1352741644-16809-4-git-send-email-jolsa@redhat.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      2711926a
    • J
      perf tools: Fix 'disabled' attribute config for record command · 774cb499
      Jiri Olsa 提交于
      Currently the record command sets all events initially as disabled.
      
      There's non conditional perf_evlist__enable call, that enables all
      events before we exec tracee program. That actually screws whole
      enable_on_exec logic, because the event is enabled before the traced
      program got executed.
      
      What we actually want is:
      
      1) For any type of traced program:
        - all independent events and group leaders are disabled
        - all group members are enabled
      
         Group members are ruled by group leaders. They need to
         be enabled, because the group scheduling relies on that.
      
      2) For traced programs executed by perf:
         - all independent events and group leaders have
           enable_on_exec set
         - we don't specifically enable or disable any event during
           the record command
      
         Independent events and group leaders are initially disabled
         and get enabled by exec. Group members are ruled by group
         leaders as stated in 1).
      
      3) For traced programs attached by perf (pid/tid):
         - we specifically enable or disable all events during
           the record command
      
         When attaching events to already running traced we
         enable/disable events specifically, as there's no
         initial traced exec call.
      
      Fixing appropriate perf_event_attr test case to cover this change.
      Signed-off-by: NJiri Olsa <jolsa@redhat.com>
      Acked-by: NNamhyung Kim <namhyung@kernel.org>
      Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1352741644-16809-3-git-send-email-jolsa@redhat.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      774cb499
    • J
      perf tools: Fix attributes for '{}' defined event groups · cac21425
      Jiri Olsa 提交于
      Fixing events attributes for groups defined via '{}'.
      
      Currently 'enable_on_exec' attribute in record command and both
      'disabled ' and 'enable_on_exec' attributes in stat command are set
      based on the 'group' option. This eliminates proper setup for '{}'
      defined groups as they don't set 'group' option.
      
      Making above attributes values based on the 'evsel->leader' as this is
      common to both group definition.
      
      Moving perf_evlist__set_leader call within builtin-record ahead
      perf_evlist__config_attrs call, because the latter needs possible group
      leader links in place.
      Signed-off-by: NJiri Olsa <jolsa@redhat.com>
      Acked-by: NNamhyung Kim <namhyung@kernel.org>
      Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1352741644-16809-2-git-send-email-jolsa@redhat.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      cac21425
  15. 29 10月, 2012 1 次提交
  16. 25 10月, 2012 1 次提交
    • D
      perf tools: Give user better message if precise is not supported · 2305c82f
      David Ahern 提交于
      Platforms (e.g., VM's) without support for precise mode get a confusing
      error message. e.g.,
      $ perf record -e cycles:p -a -- sleep 1
      
        Error: sys_perf_event_open() syscall returned with 95 (Operation not
        supported).  /bin/dmesg may provide additional information.
      
        No hardware sampling interrupt available. No APIC? If so then you can
        boot the kernel with the "lapic" boot parameter to force-enable it.
        sleep: Terminated
      
      which is not clear that precise mode might be the root problem. With this
      patch:
      
      $ perf record -e cycles:p -fo /tmp/perf.data -- sleep 1
        Error:
        'precise' request may not be supported. Try removing 'p' modifier
        sleep: Terminated
      
      v2: softened message to 'may not be' supported per Robert's suggestion
      Signed-off-by: NDavid Ahern <dsahern@gmail.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Robert Richter <robert.richter@amd.com>
      Link: http://lkml.kernel.org/r/1347569955-54626-4-git-send-email-dsahern@gmail.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      2305c82f
  17. 09 10月, 2012 1 次提交
  18. 03 10月, 2012 2 次提交
  19. 27 9月, 2012 1 次提交
  20. 21 9月, 2012 1 次提交
  21. 11 9月, 2012 1 次提交
    • I
      perf tools: Use __maybe_used for unused variables · 1d037ca1
      Irina Tirdea 提交于
      perf defines both __used and __unused variables to use for marking
      unused variables. The variable __used is defined to
      __attribute__((__unused__)), which contradicts the kernel definition to
      __attribute__((__used__)) for new gcc versions. On Android, __used is
      also defined in system headers and this leads to warnings like: warning:
      '__used__' attribute ignored
      
      __unused is not defined in the kernel and is not a standard definition.
      If __unused is included everywhere instead of __used, this leads to
      conflicts with glibc headers, since glibc has a variables with this name
      in its headers.
      
      The best approach is to use __maybe_unused, the definition used in the
      kernel for __attribute__((unused)). In this way there is only one
      definition in perf sources (instead of 2 definitions that point to the
      same thing: __used and __unused) and it works on both Linux and Android.
      This patch simply replaces all instances of __used and __unused with
      __maybe_unused.
      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: 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-7-git-send-email-irina.tirdea@intel.com
      [ committer note: fixed up conflict with a116e05d in builtin-sched.c ]
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      1d037ca1
  22. 06 9月, 2012 1 次提交