09 Nov, 2012

6 commits

  • Its not 'diff' specific and will be useful for other use cases, like
    bucketizing multiple events in a single session.

    Cc: David Ahern
    Cc: Frederic Weisbecker
    Cc: Jiri Olsa
    Cc: Mike Galbraith
    Cc: Namhyung Kim
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Cc: Stephane Eranian
    Link: http://lkml.kernel.org/n/tip-o35urjgxfxxm70aw1wa81s4w@git.kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Arnaldo Carvalho de Melo
     
  • We want to match more than two hists, so that we can match more than two
    perf.data files and moreover, match hist_entries (buckets) in multiple
    events in a group.

    So the "baseline"/"leader" will instead of a ->pair pointer, use a
    list_head, that will link to the pairs and hists__match use it.

    Following that perf_evlist__link will link the hists in its evsel
    groups.

    Cc: David Ahern
    Cc: Frederic Weisbecker
    Cc: Jiri Olsa
    Cc: Mike Galbraith
    Cc: Namhyung Kim
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Cc: Stephane Eranian
    Link: http://lkml.kernel.org/n/tip-2kbmzepoi544ygj9godseqpv@git.kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Arnaldo Carvalho de Melo
     
  • Arnaldo reported that annotation during perf top resulted in a segfault.
    It was because the env->arch was NULL and we don't set it for a live
    session. In fact, no need to look up objdump in this case since we can
    use system's default (native) objdump.

    Reported-by: Arnaldo Carvalho de Melo
    Signed-off-by: Namhyung Kim
    Cc: David Ahern
    Cc: Ingo Molnar
    Cc: Irina Tirdea
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1352251815-12615-1-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • - Add missing scanner symbol for arbitrary aliases inside the config
    region.

    - looks nicer than _, so allow - in the event names. Used for various of
    the arch perfmon and Haswell events.

    Signed-off-by: Andi Kleen
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Namhyung Kim
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1352123463-7346-6-git-send-email-eranian@google.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Andi Kleen
     
  • Adding LIBDW_DIR Makefile variable to be able to specify
    alternate libdw library location.

    To use it run make like:
    $ make LIBDW_DIR=/opt/libdw/

    Signed-off-by: Jiri Olsa
    Cc: Arnaldo Carvalho de Melo
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/n/tip-n2uv8c9ti6b26fioaw2rq5yv@git.kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Currently if there's 'Unsup' exception raised, we do not clean up the
    temp directory. Solving this by adding 'finally' to make the cleanup in
    any case.

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1352390461-15404-1-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     

08 Nov, 2012

3 commits

  • Those data should be free along with the associated hist_entry,
    otherwise it'll be leaked.

    Signed-off-by: Namhyung Kim
    Cc: Andi Kleen
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Cc: Stephane Eranian
    Link: http://lkml.kernel.org/r/1352273234-28912-7-git-send-email-namhyung@kernel.org
    [ committer note: mem_info is not yet in perf/core, free just branch_info ]
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • Output of /proc//maps contains helpful information to anonymous
    mappings like stack, heap, ... For the case of stack, it can show
    multiple stack area for each thread in the process:

    $ cat /proc/$(pidof gnome-shell)/maps | grep stack
    7fe019946000-7fe01a146000 rw-p 00000000 00:00 0 [stack:1624]
    7fe040e32000-7fe041632000 rw-p 00000000 00:00 0 [stack:1451]
    7fe041643000-7fe041e43000 rw-p 00000000 00:00 0 [stack:1450]
    7fe04204b000-7fe04284b000 rw-p 00000000 00:00 0 [stack:1449]
    7fe042a7e000-7fe04327e000 rw-p 00000000 00:00 0 [stack:1446]
    7fe0432ff000-7fe043aff000 rw-p 00000000 00:00 0 [stack:1445]
    7fe043b00000-7fe044300000 rw-p 00000000 00:00 0 [stack:1444]
    7fe044301000-7fe044b01000 rw-p 00000000 00:00 0 [stack:1443]
    7fe044b02000-7fe045302000 rw-p 00000000 00:00 0 [stack:1442]
    7fe045303000-7fe045b03000 rw-p 00000000 00:00 0 [stack:1441]
    7fe045b04000-7fe046304000 rw-p 00000000 00:00 0 [stack:1440]
    7fe046305000-7fe046b05000 rw-p 00000000 00:00 0 [stack:1439]
    7fe046b06000-7fe047306000 rw-p 00000000 00:00 0 [stack:1438]
    7fff4b16f000-7fff4b190000 rw-p 00000000 00:00 0 [stack]

    However perf only knew about the main thread's. Fix it.

    Signed-off-by: Namhyung Kim
    Cc: Andi Kleen
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Cc: Stephane Eranian
    Link: http://lkml.kernel.org/r/1352273234-28912-4-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • Currently only text (function) mapping was set, so that the kernel data
    addresses couldn't parsed correctly. Fix it.

    Signed-off-by: Namhyung Kim
    Cc: Andi Kleen
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Cc: Stephane Eranian
    Link: http://lkml.kernel.org/r/1352273234-28912-3-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     

06 Nov, 2012

18 commits

  • Since we allow multiple values in event field assignment, there's no
    need for 'optional' field.. old version removal leftover.

    Adding some comments into attr.py script regarding the test event load.

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1352130579-13451-5-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Currently the 'watermark' field is coded as 'watermask'.

    As the type is global through the framework and tests, the typo spawned
    no error.

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1352130579-13451-4-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Changing WRITE_ASS macro per Namhyung's comments, so the main usage case
    takes only attr field name and format string.

    Suggested-by: Namhyung Kim
    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1352130579-13451-3-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'stat -e cycles'

    Reported-by: Namhyung Kim
    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1352130579-13451-2-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • David reported that current perf report refused to run on a data file
    captured from a different machine because of objdump.

    Since the objdump tools won't be used unless annotation was requested,
    checking its presence at init time doesn't make sense.

    Reported-by: David Ahern
    Signed-off-by: Namhyung Kim
    Reviewed-by: David Ahern
    Tested-by: David Ahern
    Cc: Ingo Molnar
    Cc: Irina Tirdea
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351835406-15208-3-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • Currently various hist browser functions receive 3 arguments for
    refreshing histogram but only used from a few places. Also it's only
    for perf top command so that it can be NULL for other (and probably
    most) cases. Pack them into a struct in order to reduce number of those
    unused arguments.

    This is a mechanical change and does not intend a functional change.

    Signed-off-by: Namhyung Kim
    Tested-by: David Ahern
    Cc: David Ahern
    Cc: Ingo Molnar
    Cc: Irina Tirdea
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351835406-15208-2-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • David reported that perf report for i686 target data on x86_64 host
    failed to work because it tried to find out cross-compiled objdump.

    However objdump for x86_64 is compatible to i686 so that it doesn't need
    to do it at all. To prevent similar artifacts, normalize arch name when
    comparing host and file architectures.

    Reported-by: David Ahern
    Signed-off-by: Namhyung Kim
    Reviewed-by: David Ahern
    Tested-by: David Ahern
    Cc: David Ahern
    Cc: Ingo Molnar
    Cc: Irina Tirdea
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351835406-15208-1-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Namhyung Kim
     
  • Adding documentation for attr tests.

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-26-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for commands:
    'stat -d'
    'stat -dd'
    'stat -ddd'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-24-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'stat'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-23-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'stat -e {cycles,instructions}'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-22-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'stat --group -e cycles,instructions'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-21-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'stat -i'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-20-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record -j any'
    'record -j any_call'
    'record -j any_ret'
    'record -j hv'
    'record -j ind_call'
    'record -j k'
    'record -j u'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-18-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record -b'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-17-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record -D'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-16-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record -R'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-15-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record -d'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-14-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     

02 Nov, 2012

10 commits

  • Adding test to validate perf_event_attr data for command:
    'record -i'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-13-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record -n'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-12-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record -c 100 -P'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-11-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding tests to validate perf_event_attr data for commands:
    'record -g --'
    'record -g fp
    'record -g dwarf

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-10-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record -c 123'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-9-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record -F 100'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-8-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record group -e {cycles,instructions}'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-7-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record --group -e cycles,instructions'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-6-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • The test attr suite is run only if it's run under perf source directory,
    or tests are found in installed path.

    Otherwise tests are omitted (notification is displayed) and finished as
    successful.

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-25-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Adding test to validate perf_event_attr data for command:
    'record'

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-5-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     

01 Nov, 2012

3 commits

  • The idea is run perf session with kidnapping sys_perf_event_open
    function. For each sys_perf_event_open call we store the perf_event_attr
    data to the file to be checked later against what we expect.

    You can run this by:
    $ python ./tests/attr.py -d ./tests/attr/ -p ./perf -v

    v2 changes:
    - preserve errno value in the hook

    Signed-off-by: Jiri Olsa
    Cc: Arnaldo Carvalho de Melo
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/20121031145247.GB1027@krava.brq.redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • Separating test objects into 'tests' directory.

    Signed-off-by: Jiri Olsa
    Cc: Corey Ashford
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351634526-1516-3-git-send-email-jolsa@redhat.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     
  • As 'perf top' has no data files to run scripts against. Also add a
    is_report_browser() helper function to judge whether the running browser
    is for 'perf report'.

    Signed-off-by: Feng Tang
    Cc: Andi Kleen
    Cc: Ingo Molnar
    Cc: Namhyung Kim
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1351699257-5102-1-git-send-email-feng.tang@intel.com
    Signed-off-by: Arnaldo Carvalho de Melo

    Feng Tang