diff options
author | Ingo Molnar <mingo@kernel.org> | 2013-12-16 14:52:03 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2013-12-16 14:52:03 +0100 |
commit | b283d2f3b74bc98174e8453c0be41dfcda3cae1b (patch) | |
tree | e9af6975920c4bf2eb4b8cdb35f88726f3db1e77 /tools/perf/util/evlist.c | |
parent | fe361cfcf40ad4612226347573a8669cd0d44799 (diff) | |
parent | 41e12e580a7b0c151199f927193548b84d3e874c (diff) | |
download | lwn-b283d2f3b74bc98174e8453c0be41dfcda3cae1b.tar.gz lwn-b283d2f3b74bc98174e8453c0be41dfcda3cae1b.zip |
Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:
Fixes:
* Fix inverted error verification bug in thread__fork, from David Ahern.
New features:
* Shell completion for 'perf kvm', from Ramkumar Ramachandra.
Refactorings:
* Get rid of panic() like calls in libtraceevent, from Namyung Kim.
* Start carving out symbol parsing routines from perf, just moving routines to
topic files in tools/lib/symbol/, tools that want to use it need to integrate
it directly, i.e. no tools/lib/symbol/Makefile is provided.
* Assorted refactoring patches, moving code around and adding
utility evlist methods that will be used in the IPT patchset,
from Adrian Hunter.
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/perf/util/evlist.c')
-rw-r--r-- | tools/perf/util/evlist.c | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c index af250556b33f..0b31cee34874 100644 --- a/tools/perf/util/evlist.c +++ b/tools/perf/util/evlist.c @@ -1191,8 +1191,7 @@ int perf_evlist__strerror_open(struct perf_evlist *evlist __maybe_unused, "Error:\t%s.\n" "Hint:\tCheck /proc/sys/kernel/perf_event_paranoid setting.", emsg); - if (filename__read_int("/proc/sys/kernel/perf_event_paranoid", &value)) - break; + value = perf_event_paranoid(); printed += scnprintf(buf + printed, size - printed, "\nHint:\t"); @@ -1213,3 +1212,20 @@ int perf_evlist__strerror_open(struct perf_evlist *evlist __maybe_unused, return 0; } + +void perf_evlist__to_front(struct perf_evlist *evlist, + struct perf_evsel *move_evsel) +{ + struct perf_evsel *evsel, *n; + LIST_HEAD(move); + + if (move_evsel == perf_evlist__first(evlist)) + return; + + list_for_each_entry_safe(evsel, n, &evlist->entries, node) { + if (evsel->leader == move_evsel->leader) + list_move_tail(&evsel->node, &move); + } + + list_splice(&move, &evlist->entries); +} |