Em Wed, May 11, 2016 at 10:51:37PM +0900, Masami Hiramatsu escreveu:
> Fix to set correct dso name ("[kernel.kallsyms]") for
> kallsyms, as for vdso does.

Can you rewrite the above comment and also break this down in two
patches, probably decribing what is the problem that it fixes?

- Arnaldo
 
> Signed-off-by: Masami Hiramatsu <mhira...@kernel.org>
> ---
>  tools/perf/util/build-id.c |   12 ++++++++----
>  1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/tools/perf/util/build-id.c b/tools/perf/util/build-id.c
> index b6ecf87..234d8a1 100644
> --- a/tools/perf/util/build-id.c
> +++ b/tools/perf/util/build-id.c
> @@ -343,21 +343,25 @@ void disable_buildid_cache(void)
>  static char *build_id_cache__dirname_from_path(const char *name,
>                                              bool is_kallsyms, bool is_vdso)
>  {
> -     char *realname = (char *)name, *filename;
> +     const char *realname = name;
> +     char *filename;
>       bool slash = is_kallsyms || is_vdso;
>  
>       if (!slash) {
>               realname = realpath(name, NULL);
>               if (!realname)
>                       return NULL;
> -     }
> +     } else if (is_vdso)
> +             realname = DSO__NAME_VDSO;
> +     else
> +             realname = "[kernel.kallsyms]";
>  
>       if (asprintf(&filename, "%s%s%s", buildid_dir, slash ? "/" : "",
> -                  is_vdso ? DSO__NAME_VDSO : realname) < 0)
> +                  realname) < 0)
>               filename = NULL;
>  
>       if (!slash)
> -             free(realname);
> +             free((char *)realname);
>  
>       return filename;
>  }

Reply via email to