summaryrefslogtreecommitdiffstats
path: root/tools/perf/builtin-test.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-08-05 22:28:49 +0300
committerLinus Torvalds <torvalds@linux-foundation.org>2012-08-05 22:28:49 +0300
commit42a579a0f960081cd16fc945036e4780c3ad3202 (patch)
tree288c8920026c965c5d2e268cb5adae82e00602cc /tools/perf/builtin-test.c
parent1d17d17484d40f2d5b35c79518597a2b25296996 (diff)
parent8a06bf14008fbf55a86105b8569494f4beeb8762 (diff)
Merge branches 'timers-urgent-for-linus' and 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull timers and perf fixes from Ingo Molnar: "Timers: - Fix another timekeeping bug Pef: - Make clean brace expansion fix for some shells, from Palmer Cox - Warn user just once per guest kernel when not finding kernel info, from David Ahern - perf test fix from Jiri Olsa - Fix error handling on event creation in perf top, from David Ahern - Fix check on perf_target__strnerror, from Namhyung Kim - Save the whole cmdline, from David Ahern There's this infrastructure change: - Prep work for the DWARF CFI post unwinder, so that it doesn't use perf_session in lots of places, just evlist/evsel is enough. which is a late infrastructure change that prepare for future feature work - we wanted it upstream to simplify the fixes/development patch flows." * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: time: Fix adjustment cleanup bug in timekeeping_adjust() * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: perf tools: Remove brace expansion from clean target perf kvm top: Limit guest kernel info message to once perf tools: Introduce intlist perf tools: Change strlist to use the new rblist perf tools: Introducing rblist perf kvm: Use strtol for walking guestmount directory perf tool: Save cmdline from user in file header vs what is passed to record perf top: Error handling for counter creation should parallel perf-record perf session: Remove no longer used synthesize_sample method perf evsel: Adopt parse_sample method from perf_event perf evlist: Introduce perf_evlist__parse_sample perf session: Use perf_evlist__id_hdr_size more extensively perf session: Use perf_evlist__sample_id_all more extensively perf session: Use perf_evlist__sample_type more extensively perf evsel: Precalculate the sample size perf target: Fix check on buffer size perf symbols: Fix array sizes for binary types arrays perf test: Fix parse events automated tests
Diffstat (limited to 'tools/perf/builtin-test.c')
-rw-r--r--tools/perf/builtin-test.c19
1 files changed, 4 insertions, 15 deletions
diff --git a/tools/perf/builtin-test.c b/tools/perf/builtin-test.c
index d909eb74a0e..1d592f5cbea 100644
--- a/tools/perf/builtin-test.c
+++ b/tools/perf/builtin-test.c
@@ -478,7 +478,6 @@ static int test__basic_mmap(void)
unsigned int nr_events[nsyscalls],
expected_nr_events[nsyscalls], i, j;
struct perf_evsel *evsels[nsyscalls], *evsel;
- int sample_size = __perf_evsel__sample_size(attr.sample_type);
for (i = 0; i < nsyscalls; ++i) {
char name[64];
@@ -563,8 +562,7 @@ static int test__basic_mmap(void)
goto out_munmap;
}
- err = perf_event__parse_sample(event, attr.sample_type, sample_size,
- false, &sample, false);
+ err = perf_evlist__parse_sample(evlist, event, &sample, false);
if (err) {
pr_err("Can't parse sample, err = %d\n", err);
goto out_munmap;
@@ -661,12 +659,12 @@ static int test__PERF_RECORD(void)
const char *cmd = "sleep";
const char *argv[] = { cmd, "1", NULL, };
char *bname;
- u64 sample_type, prev_time = 0;
+ u64 prev_time = 0;
bool found_cmd_mmap = false,
found_libc_mmap = false,
found_vdso_mmap = false,
found_ld_mmap = false;
- int err = -1, errs = 0, i, wakeups = 0, sample_size;
+ int err = -1, errs = 0, i, wakeups = 0;
u32 cpu;
int total_events = 0, nr_events[PERF_RECORD_MAX] = { 0, };
@@ -757,13 +755,6 @@ static int test__PERF_RECORD(void)
}
/*
- * We'll need these two to parse the PERF_SAMPLE_* fields in each
- * event.
- */
- sample_type = perf_evlist__sample_type(evlist);
- sample_size = __perf_evsel__sample_size(sample_type);
-
- /*
* Now that all is properly set up, enable the events, they will
* count just on workload.pid, which will start...
*/
@@ -788,9 +779,7 @@ static int test__PERF_RECORD(void)
if (type < PERF_RECORD_MAX)
nr_events[type]++;
- err = perf_event__parse_sample(event, sample_type,
- sample_size, true,
- &sample, false);
+ err = perf_evlist__parse_sample(evlist, event, &sample, false);
if (err < 0) {
if (verbose)
perf_event__fprintf(event, stderr);