From: Adrian Hunter <adrian.hunter@intel.com>
To: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Cc: linux-kernel@vger.kernel.org, David Ahern <dsahern@gmail.com>,
Frederic Weisbecker <fweisbec@gmail.com>,
Jiri Olsa <jolsa@redhat.com>, Mike Galbraith <efault@gmx.de>,
Namhyung Kim <namhyung@gmail.com>,
Paul Mackerras <paulus@samba.org>,
Peter Zijlstra <peterz@infradead.org>,
Stephane Eranian <eranian@google.com>,
Ingo Molnar <mingo@kernel.org>
Subject: [PATCH V8 00/15] perf tools: some fixes and tweaks
Date: Thu, 18 Jul 2013 13:42:42 +0300 [thread overview]
Message-ID: <1374144177-24762-1-git-send-email-adrian.hunter@intel.com> (raw)
Hi
Here are some fixes and tweaks to perf tools (version 8).
Changes in V8:
perf tools: add debug prints
Fixed Python link errors
perf tools: move perf_evlist__config() to a new source file
New Patch to avoid Python link errors
perf tools: add support for PERF_SAMPLE_IDENTFIER
Adjustments due to patch above
Changes in V7:
perf: Update perf_event_type documentation
Proposed new patch from Peter Zijlstra
perf: make events stream always parsable
Adjustments due to patch above
perf tools: tidy up sample parsing overflow checking
Change to a single overflow function
Amend comment
perf tools: add a function to calculate sample event size
New patch
perf tools: add a sample parsing test
Amended to use sample event size calculation
Changes in V6:
Some checkpatch fixes
perf: make events stream always parsable
Add sample format comments
Changes in V5:
Re-based to Arnaldo's tree and dropped already applied patches:
perf tools: remove unused parameter
perf tools: fix missing tool parameter
perf tools: fix missing 'finished_round'
perf tools: fix parse_events_terms() segfault on error path
perf tools: fix new_term() missing free on error path
perf tools: add const specifier to perf_pmu__find name parameter
perf tools: tidy duplicated munmap code
perf tools: validate perf event header size
perf tools: add debug prints
Changed to perf_event_attr__fprintf()
perf tools: add pid to struct thread
Always set the pid, even if a pid is already set
perf tools: change machine__findnew_thread() to set thread pid
Replaces: perf tools: change "machine" functions to set thread pid
perf tools: add support for PERF_SAMPLE_IDENTFIER
Only use PERF_SAMPLE_IDENTFIER if sample types are different
perf tools: expand perf_event__synthesize_sample()
New patch in preparation of a sample parsing test
perf tools: add a sample parsing test
New patch
Changes in V4:
I added kernel support for matching sample types via
PERF_SAMPLE_IDENTIFIER. perf tools support for that required
first fixing some other things.
perf tools: fix parse_events_terms() freeing local variable on error path
Dropped - covered by David Ahern
perf tools: struct thread has a tid not a pid
Added ack by David Ahern
perf tools: add pid to struct thread
Remove unused function
perf tools: fix missing increment in sample parsing
New patch
perf tools: tidy up sample parsing overflow checking
New patch
perf tools: remove unnecessary callchain validation
New patch
perf tools: remove references to struct ip_event
New patch
perf tools: move struct ip_event
New patch
perf: make events stream always parsable
New patch
perf tools: add support for PERF_SAMPLE_IDENTFIER
New patch
Changes in V3:
perf tools: add pid to struct thread
Split into 2 patches
perf tools: fix ppid in thread__fork()
Dropped for now
Changes in V2:
perf tools: fix missing tool parameter
Fixed one extra occurrence
perf tools: fix parse_events_terms() freeing local variable on error path
Made "freeing" code into a new function
perf tools: validate perf event header size
Corrected byte-swapping
perf tools: allow non-matching sample types
Added comments
Fixed id_pos calculation
id_pos/is_pos updated whenever sample_type changes
Removed perf_evlist__sample_type()
Added __perf_evlist__combined_sample_type()
Added perf_evlist__combined_sample_type()
Added perf_evlist__make_sample_types_compatible()
Added ack's to patches acked by Jiri Olsa
Adrian Hunter (14):
perf tools: add debug prints
perf tools: allow non-matching sample types
perf tools: add pid to struct thread
perf tools: change machine__findnew_thread() to set thread pid
perf tools: tidy up sample parsing overflow checking
perf tools: remove unnecessary callchain validation
perf tools: remove references to struct ip_event
perf tools: move struct ip_event
perf: make events stream always parsable
perf tools: move perf_evlist__config() to a new source file
perf tools: add support for PERF_SAMPLE_IDENTFIER
perf tools: expand perf_event__synthesize_sample()
perf tools: add a function to calculate sample event size
perf tools: add a sample parsing test
Peter Zijlstra (1):
perf: Update perf_event_type documentation
include/uapi/linux/perf_event.h | 46 ++++-
kernel/events/core.c | 42 ++--
tools/perf/Makefile | 2 +
tools/perf/builtin-inject.c | 7 +-
tools/perf/builtin-kmem.c | 3 +-
tools/perf/builtin-kvm.c | 3 +-
tools/perf/builtin-lock.c | 3 +-
tools/perf/builtin-mem.c | 2 +-
tools/perf/builtin-report.c | 2 +-
tools/perf/builtin-sched.c | 17 +-
tools/perf/builtin-script.c | 3 +-
tools/perf/builtin-top.c | 11 +-
tools/perf/builtin-trace.c | 12 +-
tools/perf/tests/builtin-test.c | 4 +
tools/perf/tests/hists_link.c | 30 ++-
tools/perf/tests/mmap-basic.c | 2 +-
tools/perf/tests/sample-parsing.c | 263 +++++++++++++++++++++++++
tools/perf/tests/tests.h | 1 +
tools/perf/util/build-id.c | 11 +-
tools/perf/util/callchain.c | 8 -
tools/perf/util/callchain.h | 5 -
tools/perf/util/event.c | 5 +-
tools/perf/util/event.h | 33 ++--
tools/perf/util/evlist.c | 146 ++++++++++++--
tools/perf/util/evlist.h | 10 +-
tools/perf/util/evsel.c | 404 +++++++++++++++++++++++++++++++++-----
tools/perf/util/evsel.h | 13 +-
tools/perf/util/machine.c | 37 ++--
tools/perf/util/machine.h | 3 +-
tools/perf/util/python.c | 20 ++
tools/perf/util/record.c | 111 +++++++++++
tools/perf/util/session.c | 36 +---
tools/perf/util/thread.c | 3 +-
tools/perf/util/thread.h | 3 +-
34 files changed, 1109 insertions(+), 192 deletions(-)
create mode 100644 tools/perf/tests/sample-parsing.c
create mode 100644 tools/perf/util/record.c
Regards
Adrian
next reply other threads:[~2013-07-18 10:36 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-18 10:42 Adrian Hunter [this message]
2013-07-18 10:42 ` [PATCH V8 01/15] perf tools: add debug prints Adrian Hunter
2013-07-18 10:42 ` [PATCH V8 02/15] perf tools: allow non-matching sample types Adrian Hunter
2013-07-18 10:42 ` [PATCH V8 03/15] perf tools: add pid to struct thread Adrian Hunter
2013-07-26 15:56 ` David Ahern
2013-07-18 10:42 ` [PATCH V8 04/15] perf tools: change machine__findnew_thread() to set thread pid Adrian Hunter
2013-07-26 16:02 ` David Ahern
2013-07-28 10:43 ` Adrian Hunter
2013-07-29 22:19 ` David Ahern
2013-07-18 10:42 ` [PATCH V8 05/15] perf tools: tidy up sample parsing overflow checking Adrian Hunter
2013-07-18 10:42 ` [PATCH V8 06/15] perf tools: remove unnecessary callchain validation Adrian Hunter
2013-07-18 10:42 ` [PATCH V8 07/15] perf tools: remove references to struct ip_event Adrian Hunter
2013-07-18 10:42 ` [PATCH V8 08/15] perf tools: move " Adrian Hunter
2013-07-18 10:42 ` [PATCH V8 09/15] perf: Update perf_event_type documentation Adrian Hunter
2013-07-18 10:42 ` [PATCH V8 10/15] perf: make events stream always parsable Adrian Hunter
2013-07-29 9:55 ` Stephane Eranian
2013-07-18 10:42 ` [PATCH V8 11/15] perf tools: move perf_evlist__config() to a new source file Adrian Hunter
2013-07-18 10:42 ` [PATCH V8 12/15] perf tools: add support for PERF_SAMPLE_IDENTFIER Adrian Hunter
2013-07-18 10:42 ` [PATCH V8 13/15] perf tools: expand perf_event__synthesize_sample() Adrian Hunter
2013-07-24 12:50 ` Jiri Olsa
2013-07-24 13:15 ` Adrian Hunter
2013-07-24 13:15 ` Jiri Olsa
2013-07-18 10:42 ` [PATCH V8 14/15] perf tools: add a function to calculate sample event size Adrian Hunter
2013-07-24 13:01 ` Jiri Olsa
2013-07-18 10:42 ` [PATCH V8 15/15] perf tools: add a sample parsing test Adrian Hunter
2013-07-24 13:12 ` Jiri Olsa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1374144177-24762-1-git-send-email-adrian.hunter@intel.com \
--to=adrian.hunter@intel.com \
--cc=acme@ghostprotocols.net \
--cc=dsahern@gmail.com \
--cc=efault@gmx.de \
--cc=eranian@google.com \
--cc=fweisbec@gmail.com \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=namhyung@gmail.com \
--cc=paulus@samba.org \
--cc=peterz@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).