On Tue, Jun 04, 2013 at 02:20:26PM +0900, Namhyung Kim wrote:
> From: Namhyung Kim <namhyung....@lge.com>
> 
> The header_page file describes the format of the ring buffer page
> which is used by ftrace (not perf).  And size of "commit" field (I
> guess it's older name was 'size') represents the real size of long
> type used for kernel.  So update the pevent's long size.
> 
> Signed-off-by: Namhyung Kim <namhy...@kernel.org>
> ---
>  tools/perf/util/trace-event-read.c | 22 +++++++++++++++++++++-
>  1 file changed, 21 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/perf/util/trace-event-read.c 
> b/tools/perf/util/trace-event-read.c
> index fa45fca2a2d3..f2112270c663 100644
> --- a/tools/perf/util/trace-event-read.c
> +++ b/tools/perf/util/trace-event-read.c
> @@ -212,6 +212,7 @@ static int read_ftrace_printk(struct pevent *pevent)
>  static int read_header_files(struct pevent *pevent)
>  {
>       unsigned long long size;
> +     char *header_page;
>       char buf[BUFSIZ];
>       int ret = 0;
>  
> @@ -224,7 +225,26 @@ static int read_header_files(struct pevent *pevent)
>       }
>  
>       size = read8(pevent);
> -     skip(size);
> +
> +     header_page = malloc(size);
> +     if (header_page == NULL)
> +             return -1;
> +
> +     if (do_read(header_page, size) < 0) {
> +             pr_debug("did not read header page");
> +             free(header_page);
> +             return -1;
> +     }
> +
> +     if (!pevent_parse_header_page(pevent, header_page, size,
> +                                   pevent_get_long_size(pevent))) {
> +             /*
> +              * The commit field in the page is of type long,
> +              * use that instead, since it represents the kernel.
> +              */
> +             pevent_set_long_size(pevent, pevent->header_page_size_size);
> +     }
> +     free(header_page);

any reason why not merge this one with
  83ae6eb perf util: Skip reading header_event file

jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to