aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/util/trace-event-read.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/perf/util/trace-event-read.c')
-rw-r--r--tools/perf/util/trace-event-read.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/tools/perf/util/trace-event-read.c b/tools/perf/util/trace-event-read.c
index 44889c9b5630..46066391288a 100644
--- a/tools/perf/util/trace-event-read.c
+++ b/tools/perf/util/trace-event-read.c
@@ -52,6 +52,12 @@ static unsigned long page_size;
52 52
53static ssize_t calc_data_size; 53static ssize_t calc_data_size;
54 54
55/* If it fails, the next read will report it */
56static void skip(int size)
57{
58 lseek(input_fd, size, SEEK_CUR);
59}
60
55static int do_read(int fd, void *buf, int size) 61static int do_read(int fd, void *buf, int size)
56{ 62{
57 int rsize = size; 63 int rsize = size;
@@ -169,7 +175,6 @@ static void read_ftrace_printk(void)
169static void read_header_files(void) 175static void read_header_files(void)
170{ 176{
171 unsigned long long size; 177 unsigned long long size;
172 char *header_page;
173 char *header_event; 178 char *header_event;
174 char buf[BUFSIZ]; 179 char buf[BUFSIZ];
175 180
@@ -179,10 +184,7 @@ static void read_header_files(void)
179 die("did not read header page"); 184 die("did not read header page");
180 185
181 size = read8(); 186 size = read8();
182 header_page = malloc_or_die(size); 187 skip(size);
183 read_or_die(header_page, size);
184 parse_header_page(header_page, size);
185 free(header_page);
186 188
187 /* 189 /*
188 * The size field in the page is of type long, 190 * The size field in the page is of type long,