aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2012-09-26 02:57:22 -0400
committerIngo Molnar <mingo@kernel.org>2012-09-26 02:57:22 -0400
commita91f408e4435d4f572392295ee47756b6f5011c7 (patch)
tree298177b72d51218a69ffd92a940029c13a3bdde6
parentf74eb728687afbf239abe2ea66921583db4eaa4b (diff)
parentf1b2256d66fe8d613b9afcc1c16079362f9fc05c (diff)
Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf/core fixes from Arnaldo Carvalho de Melo: * The new perf_evsel__tp_sched_test 'perf test' broke the build by setting the 'ret' variable but not using it, caught by newer gcc -Werror=unused-but-set-variable, fix from Namhyung Kim. * pevent_parse_event should return a proper PEVENT_ERRNO__ and call pevent_free_format on its failure path, fixes from Namhyung Kim. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--tools/lib/traceevent/event-parse.c8
-rw-r--r--tools/perf/builtin-test.c4
2 files changed, 6 insertions, 6 deletions
diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c
index 17c922145e88..47264b4652b9 100644
--- a/tools/lib/traceevent/event-parse.c
+++ b/tools/lib/traceevent/event-parse.c
@@ -5044,8 +5044,10 @@ enum pevent_errno pevent_parse_event(struct pevent *pevent, const char *buf,
5044 /* Add pevent to event so that it can be referenced */ 5044 /* Add pevent to event so that it can be referenced */
5045 event->pevent = pevent; 5045 event->pevent = pevent;
5046 5046
5047 if (add_event(pevent, event)) 5047 if (add_event(pevent, event)) {
5048 ret = PEVENT_ERRNO__MEM_ALLOC_FAILED;
5048 goto event_add_failed; 5049 goto event_add_failed;
5050 }
5049 5051
5050#define PRINT_ARGS 0 5052#define PRINT_ARGS 0
5051 if (PRINT_ARGS && event->print_fmt.args) 5053 if (PRINT_ARGS && event->print_fmt.args)
@@ -5054,9 +5056,7 @@ enum pevent_errno pevent_parse_event(struct pevent *pevent, const char *buf,
5054 return 0; 5056 return 0;
5055 5057
5056event_add_failed: 5058event_add_failed:
5057 free(event->system); 5059 pevent_free_format(event);
5058 free(event->name);
5059 free(event);
5060 return ret; 5060 return ret;
5061} 5061}
5062 5062
diff --git a/tools/perf/builtin-test.c b/tools/perf/builtin-test.c
index 32caf13cfe01..78b47a75a7c9 100644
--- a/tools/perf/builtin-test.c
+++ b/tools/perf/builtin-test.c
@@ -1233,7 +1233,7 @@ static int perf_evsel__test_field(struct perf_evsel *evsel, const char *name,
1233 ret = -1; 1233 ret = -1;
1234 } 1234 }
1235 1235
1236 return 0; 1236 return ret;
1237} 1237}
1238 1238
1239static int perf_evsel__tp_sched_test(void) 1239static int perf_evsel__tp_sched_test(void)
@@ -1286,7 +1286,7 @@ static int perf_evsel__tp_sched_test(void)
1286 if (perf_evsel__test_field(evsel, "target_cpu", 4, true)) 1286 if (perf_evsel__test_field(evsel, "target_cpu", 4, true))
1287 ret = -1; 1287 ret = -1;
1288 1288
1289 return 0; 1289 return ret;
1290} 1290}
1291 1291
1292static struct test { 1292static struct test {