On Mon, 10 Nov 2014 16:01:19 -0500, kan liang wrote:
> From: Kan Liang <[email protected]>
>
> Currently, the perf diff only works with same binaries. That's because
> it compares the symbol start address. It doesn't work if the perf.data
> comes from different binaries. This patch matches the function names.
>
> Signed-off-by: Kan Liang <[email protected]>

Acked-by: Namhyung Kim <[email protected]>

Thanks,
Namhyung


> ---
>  tools/perf/util/sort.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
>
> diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c
> index 9402885..ee235ab 100644
> --- a/tools/perf/util/sort.c
> +++ b/tools/perf/util/sort.c
> @@ -1430,6 +1430,15 @@ int sort_dimension__add(const char *tok)
>                       sort__has_parent = 1;
>               } else if (sd->entry == &sort_sym) {
>                       sort__has_sym = 1;
> +                     /*
> +                      * perf diff displays the performance difference amongst
> +                      * two or more perf.data files. Those files could come 
> from
> +                      * different binaries. So we should not compare their 
> ips.
> +                      * The name of symble should be the key we do compare.
> +                      */
> +                     if (sort__mode == SORT_MODE__DIFF)
> +                             sd->entry->se_collapse = sort__sym_sort;
> +
>               } else if (sd->entry == &sort_dso) {
>                       sort__has_dso = 1;
>               }
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
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