diff options
Diffstat (limited to 'tools/perf/builtin-timechart.c')
-rw-r--r-- | tools/perf/builtin-timechart.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/tools/perf/builtin-timechart.c b/tools/perf/builtin-timechart.c index f472df9561ee..759dd2b35fdb 100644 --- a/tools/perf/builtin-timechart.c +++ b/tools/perf/builtin-timechart.c | |||
@@ -1059,15 +1059,17 @@ static struct perf_file_handler file_handler = { | |||
1059 | 1059 | ||
1060 | static int __cmd_timechart(void) | 1060 | static int __cmd_timechart(void) |
1061 | { | 1061 | { |
1062 | struct perf_header *header; | 1062 | struct perf_session *session = perf_session__new(input_name, O_RDONLY, 0); |
1063 | int ret; | 1063 | int ret; |
1064 | 1064 | ||
1065 | if (session == NULL) | ||
1066 | return -ENOMEM; | ||
1067 | |||
1065 | register_perf_file_handler(&file_handler); | 1068 | register_perf_file_handler(&file_handler); |
1066 | 1069 | ||
1067 | ret = mmap_dispatch_perf_file(&header, input_name, 0, 0, | 1070 | ret = perf_session__process_events(session, 0, &event__cwdlen, &event__cwd); |
1068 | &event__cwdlen, &event__cwd); | ||
1069 | if (ret) | 1071 | if (ret) |
1070 | return EXIT_FAILURE; | 1072 | goto out_delete; |
1071 | 1073 | ||
1072 | process_samples(); | 1074 | process_samples(); |
1073 | 1075 | ||
@@ -1079,8 +1081,9 @@ static int __cmd_timechart(void) | |||
1079 | 1081 | ||
1080 | pr_info("Written %2.1f seconds of trace to %s.\n", | 1082 | pr_info("Written %2.1f seconds of trace to %s.\n", |
1081 | (last_time - first_time) / 1000000000.0, output_name); | 1083 | (last_time - first_time) / 1000000000.0, output_name); |
1082 | 1084 | out_delete: | |
1083 | return EXIT_SUCCESS; | 1085 | perf_session__delete(session); |
1086 | return ret; | ||
1084 | } | 1087 | } |
1085 | 1088 | ||
1086 | static const char * const timechart_usage[] = { | 1089 | static const char * const timechart_usage[] = { |