[PATCH v21 14/19] perf, tools, jevents: Handle header line in mapfile

Arnaldo Carvalho de Melo acme at kernel.org
Tue Oct 4 11:36:33 AEDT 2016


Em Thu, Sep 15, 2016 at 03:24:51PM -0700, Sukadev Bhattiprolu escreveu:
> From: Andi Kleen <ak at linux.intel.com>
> 
> To work with existing mapfiles, assume that the first line in
> 'mapfile.csv' is a header line and skip over it.

Moved this more to the front of this patchkit so that when testing it,
reproducing the tests performed earlier, one don't have to remove the
header.

- Arnaldo
 
> Signed-off-by: Andi Kleen <ak at linux.intel.com>
> Signed-off-by: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
> Acked-by: Jiri Olsa <jolsa at redhat.com>
> Acked-by: Ingo Molnar <mingo at kernel.org>
> ---
> 
> Changelog[v2]
> 	All architectures may not use the "Family" to identify. So,
> 	assume first line is header.
> ---
>  tools/perf/pmu-events/jevents.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/perf/pmu-events/jevents.c b/tools/perf/pmu-events/jevents.c
> index f550cad..9cdfbaa 100644
> --- a/tools/perf/pmu-events/jevents.c
> +++ b/tools/perf/pmu-events/jevents.c
> @@ -492,7 +492,12 @@ static int process_mapfile(FILE *outfp, char *fpath)
>  
>  	print_mapping_table_prefix(outfp);
>  
> -	line_num = 0;
> +	/* Skip first line (header) */
> +	p = fgets(line, n, mapfp);
> +	if (!p)
> +		goto out;
> +
> +	line_num = 1;
>  	while (1) {
>  		char *cpuid, *version, *type, *fname;
>  
> @@ -536,8 +541,8 @@ static int process_mapfile(FILE *outfp, char *fpath)
>  		fprintf(outfp, "},\n");
>  	}
>  
> +out:
>  	print_mapping_table_suffix(outfp);
> -
>  	return 0;
>  }
>  
> -- 
> 1.8.3.1


More information about the Linuxppc-dev mailing list