tools lib traceevent: Fix kbuffer_read_at_offset()
authorNamhyung Kim <namhyung@kernel.org>
Sat, 1 Oct 2016 10:17:00 +0000 (19:17 +0900)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Wed, 5 Oct 2016 14:36:22 +0000 (11:36 -0300)
When it's called with an offset less than or equal to the first event,
it'll return a garbage value since the data is not initialized.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Acked-by: Steven Rostedt <rostedt@goodmis.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20161001101700.29146-1-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/lib/traceevent/kbuffer-parse.c

index 3bcada3..65984f1 100644 (file)
@@ -622,6 +622,7 @@ void *kbuffer_read_at_offset(struct kbuffer *kbuf, int offset,
 
        /* Reset the buffer */
        kbuffer_load_subbuffer(kbuf, kbuf->subbuffer);
+       data = kbuffer_read_event(kbuf, ts);
 
        while (kbuf->curr < offset) {
                data = kbuffer_next_event(kbuf, ts);