diff options
author | Ingo Molnar <mingo@kernel.org> | 2015-05-05 22:42:12 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2015-05-05 22:42:12 -0400 |
commit | 1836ac856e4fb446e48afa4f8cae897d4856b06c (patch) | |
tree | 1b5da329b15a09e13189801c82266fb6805a90af /tools/lib/traceevent/event-parse.c | |
parent | 5ebe6afaf0057ac3eaeb98defd5456894b446d22 (diff) | |
parent | 3698dab1c849c7e1cd440df4fca24baa1973d53b (diff) |
Merge tag 'perf-core-for-mingo-3' 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:
User visible changes:
- Improve --filter support for 'perf probe', allowing using its arguments
on other commands, as --add, --del, etc (Masami Hiramatsu)
- Show warning when running 'perf kmem stat' on a unsuitable perf.data file,
i.e. one with events that are not the ones required for the stat variant
used (Namhyung Kim).
Infrastructure changes:
- Auxtrace support patches, paving the way to support Intel PT and BTS (Adrian Hunter)
- hists browser (top, report) refactorings (Namhyung Kim)
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/lib/traceevent/event-parse.c')
-rw-r--r-- | tools/lib/traceevent/event-parse.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c index e0917c0f5d9f..e29e4f81a40d 100644 --- a/tools/lib/traceevent/event-parse.c +++ b/tools/lib/traceevent/event-parse.c | |||
@@ -1387,7 +1387,7 @@ static int event_read_fields(struct event_format *event, struct format_field **f | |||
1387 | do_warning_event(event, "%s: no type found", __func__); | 1387 | do_warning_event(event, "%s: no type found", __func__); |
1388 | goto fail; | 1388 | goto fail; |
1389 | } | 1389 | } |
1390 | field->name = last_token; | 1390 | field->name = field->alias = last_token; |
1391 | 1391 | ||
1392 | if (test_type(type, EVENT_OP)) | 1392 | if (test_type(type, EVENT_OP)) |
1393 | goto fail; | 1393 | goto fail; |
@@ -1469,7 +1469,7 @@ static int event_read_fields(struct event_format *event, struct format_field **f | |||
1469 | size_dynamic = type_size(field->name); | 1469 | size_dynamic = type_size(field->name); |
1470 | free_token(field->name); | 1470 | free_token(field->name); |
1471 | strcat(field->type, brackets); | 1471 | strcat(field->type, brackets); |
1472 | field->name = token; | 1472 | field->name = field->alias = token; |
1473 | type = read_token(&token); | 1473 | type = read_token(&token); |
1474 | } else { | 1474 | } else { |
1475 | char *new_type; | 1475 | char *new_type; |
@@ -6444,6 +6444,8 @@ void pevent_ref(struct pevent *pevent) | |||
6444 | void pevent_free_format_field(struct format_field *field) | 6444 | void pevent_free_format_field(struct format_field *field) |
6445 | { | 6445 | { |
6446 | free(field->type); | 6446 | free(field->type); |
6447 | if (field->alias != field->name) | ||
6448 | free(field->alias); | ||
6447 | free(field->name); | 6449 | free(field->name); |
6448 | free(field); | 6450 | free(field); |
6449 | } | 6451 | } |