1. 18 May, 2010 9 commits
  2. 17 May, 2010 11 commits
  3. 16 May, 2010 3 commits
  4. 15 May, 2010 4 commits
  5. 14 May, 2010 4 commits
    • Arnaldo Carvalho de Melo's avatar
      perf newt: Make <- zoom out filters · 3e1bbdc3
      Arnaldo Carvalho de Melo authored
      After we use the filters to zoom into DSOs or threads, we can use <-
      (left arrow) to zoom out from the last filter applied.
      
      It is still possible to zoom out of order by using the popup menu.
      
      With this we now have the zoom out operation on the browsing fast path,
      by allowing fast navigation using just the four arrors and the enter key
      to expand collapse callchains.
      Suggested-by: default avatarIngo 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: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      3e1bbdc3
    • Arnaldo Carvalho de Melo's avatar
      perf report: Report number of events, not samples · c82ee828
      Arnaldo Carvalho de Melo authored
      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: default avatarIngo 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: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      c82ee828
    • Arnaldo Carvalho de Melo's avatar
      perf hist: Clarify events_stats fields usage · cee75ac7
      Arnaldo Carvalho de Melo authored
      The events_stats.total field is too generic, rename it to .total_period,
      and also add a comment explaining that it is the sum of all the .period
      fields in samples, that is needed because we use auto-freq to avoid
      sampling artifacts.
      
      Ditto for events_stats.lost, that is the sum of all lost_event.lost
      fields, i.e. the number of events the kernel dropped.
      
      Looking at the users, builtin-sched.c can make use of these fields and
      stop doing it again.
      
      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: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      cee75ac7
    • Arnaldo Carvalho de Melo's avatar
      perf hist: Make event__totals per hists · c8446b9b
      Arnaldo Carvalho de Melo authored
      This is one more thing that started global but are more useful per hist
      or per session.
      
      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: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      c8446b9b
  6. 13 May, 2010 5 commits
    • Kirill Smelkov's avatar
      perf trace scripts: Fix typos in perf-trace-python.txt · 5d2be7cb
      Kirill Smelkov authored
      option option   -> option
      special special -> special
      Signed-off-by: default avatarKirill Smelkov <kirr@mns.spb.ru>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      LKML-Reference: <1273747165-17242-1-git-send-email-kirr@mns.spb.ru>
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      5d2be7cb
    • Stephane Eranian's avatar
      perf tools: change event inheritance logic in stat and record · 2e6cdf99
      Stephane Eranian authored
      By default, event inheritance across fork and pthread_create was on but the -i
      option of stat and record, which enabled inheritance, led to believe it was off
      by default.
      
      This patch fixes this logic by inverting the meaning of the -i option.  By
      default inheritance is on whether you attach to a process (-p), a thread (-t)
      or start a process. If you pass -i, then you turn off inheritance. Turning off
      inheritance if you don't need it, helps limit perf resource usage as well.
      
      The patch also fixes perf stat -t xxxx and perf record -t xxxx which did not
      start the counters.
      Acked-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
      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: <4bea9d2f.d60ce30a.0b5b.08e1@mx.google.com>
      Signed-off-by: default avatarStephane Eranian <eranian@google.com>
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      2e6cdf99
    • Frederic Weisbecker's avatar
      perf hist: Fix missing getline declaration · 8a0ecfb8
      Frederic Weisbecker authored
      hist.c needs to include util.h so that it gets stdio.h
      inclusion with __GNU_SOURCE defined.
      
      Fixes:
      	util/hist.c: In function ‘hist_entry__parse_objdump_line’:
      	util/hist.c:931: erreur: implicit declaration of function ‘getline’
      	util/hist.c:931: erreur: nested extern declaration of ‘getline’
      Signed-off-by: default avatarFrederic 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>
      LKML-Reference: <1273772836-11533-1-git-send-regression-fweisbec@gmail.com>
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      8a0ecfb8
    • Frederic Weisbecker's avatar
      perf hist: Fix hists__browse no-newt case · 8769e1c7
      Frederic Weisbecker authored
      Fix mistake in a parameter type of the no-newt hists__browse()
      version.
      
      Fixes:
      	builtin-report.c: In function ‘__cmd_report’:
      	builtin-report.c:314: erreur: incompatible type for argument 1 of ‘hists__browse’
      Signed-off-by: default avatarFrederic 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>
      LKML-Reference: <1273771378-8577-1-git-send-regression-fweisbec@gmail.com>
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      8769e1c7
    • Cyrill Gorcunov's avatar
      x86, perf: P4 PMU -- use hash for p4_get_escr_idx() · 72001990
      Cyrill Gorcunov authored
      Linear search over all p4 MSRs should be fine if only
      we would not use it in events scheduling routine which
      is pretty time critical. Lets use hashes. It should speed
      scheduling up significantly.
      
      v2: Steven proposed to use more gentle approach than issue
          BUG on error, so we use WARN_ONCE now
      Signed-off-by: default avatarCyrill Gorcunov <gorcunov@openvz.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Lin Ming <ming.m.lin@intel.com>
      LKML-Reference: <20100512174242.GA5190@lenovo>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      72001990
  7. 12 May, 2010 2 commits
    • Ingo Molnar's avatar
    • Arnaldo Carvalho de Melo's avatar
      perf report: Librarize the annotation code and use it in the newt browser · ef7b93a1
      Arnaldo Carvalho de Melo authored
      Now we don't anymore use popen to run 'perf annotate' for the selected
      symbol, instead we collect per address samplings when processing samples
      in 'perf report' if we're using the newt browser, then we use this data
      directly to do annotation.
      
      Done this way we can actually traverse the objdump_line objects
      directly, matching the addresses to the collected samples and colouring
      them appropriately using lower level slang routines.
      
      The new ui_browser class will be reused for the main, callchain aware,
      histogram browser, when it will be made generic and don't assume that
      the objects are always instances of the objdump_line class maintained
      using list_heads.
      
      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: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      ef7b93a1
  8. 11 May, 2010 2 commits
    • Arnaldo Carvalho de Melo's avatar
      perf ui: Add ui_helpline methods · 3798ed7b
      Arnaldo Carvalho de Melo authored
      Initially this was just to be able to have a printf like method to
      prepare the formatted string and then pass to newtPushHelpLine, but as
      we already have for ui_progress, etc, its a step in identifying a
      restricted, highlevel set of widgets we can then have implementations
      for multiple widget sets (GTK, etc).
      
      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: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      3798ed7b
    • Kyle McMartin's avatar
      perf symbols: allow forcing use of cplus_demangle · d11c7add
      Kyle McMartin authored
      For Fedora, I want to force perf to link against libiberty.a for
      cplus_demangle, rather than libbfd.a for bfd_demangle due to licensing insanity
      on binutils. (libiberty is LGPL2, libbfd is GPL3.)
      
      If we just rely on autodetection, we'll end up with libbfd linked against us,
      since they're both in binutils-static in the buildroot.
      
      Cc: Ingo Molnar <mingo@elte.hu>
      LKML-Reference: <20100510204335.GA7565@bombadil.infradead.org>
      Signed-off-by: default avatarKyle McMartin <kyle@redhat.com>
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      d11c7add