lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <52CEB92E.6060004@cn.fujitsu.com>
Date:	Thu, 09 Jan 2014 09:58:54 -0500
From:	Dongsheng Yang <yangds.fnst@...fujitsu.com>
To:	Arnaldo Carvalho de Melo <acme@...hat.com>
CC:	linux-kernel@...r.kernel.org, mingo@...nel.org, dsahern@...il.com,
	artagnon@...il.com
Subject: Re: [PATCH 2/8] perf tools: Make the print_pmu_events funtion to
 return unsigned int.

On 01/08/2014 10:10 AM, Arnaldo Carvalho de Melo wrote:
> Em Mon, Dec 30, 2013 at 10:26:37AM -0500, Dongsheng Yang escreveu:
>> Sometimes we need to know how many events have been printed in print_pmu_events.
> "Sometimes" is too vague, of course it should be needed, otherwise why
> bother with the patch? It would be better if you provided an example of
> _where_ it will be used, like when printing that newline.

Sorry for the terrible commit message :(.

What about the following one?

"When we call print_pmu_events(), we want to know how many events has 
been printed in this function. But currently it is impossible, as it 
return void.

This patch change this function to return the number of events we have 
printed."

- Yang
> Anyway, reading the other patches,
>
> - Arnaldo
>   
>> This patch make this function to return the number of events we have printed.
>>
>> Signed-off-by: Dongsheng Yang <yangds.fnst@...fujitsu.com>
>> ---
>>   tools/perf/util/pmu.c | 12 +++++++-----
>>   tools/perf/util/pmu.h |  2 +-
>>   2 files changed, 8 insertions(+), 6 deletions(-)
>>
>> diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c
>> index 0934d64..331dc2c 100644
>> --- a/tools/perf/util/pmu.c
>> +++ b/tools/perf/util/pmu.c
>> @@ -711,12 +711,12 @@ static int cmp_string(const void *a, const void *b)
>>   	return strcmp(*as, *bs);
>>   }
>>   
>> -void print_pmu_events(const char *event_glob, bool name_only)
>> +unsigned int print_pmu_events(const char *event_glob, bool name_only)
>>   {
>>   	struct perf_pmu *pmu;
>>   	struct perf_pmu_alias *alias;
>>   	char buf[1024];
>> -	int printed = 0;
>> +	unsigned int count = 0;
>>   	int len, j;
>>   	char **aliases;
>>   
>> @@ -727,7 +727,7 @@ void print_pmu_events(const char *event_glob, bool name_only)
>>   			len++;
>>   	aliases = malloc(sizeof(char *) * len);
>>   	if (!aliases)
>> -		return;
>> +		return count;
>>   	pmu = NULL;
>>   	j = 0;
>>   	while ((pmu = perf_pmu__scan(pmu)) != NULL)
>> @@ -752,15 +752,17 @@ void print_pmu_events(const char *event_glob, bool name_only)
>>   	for (j = 0; j < len; j++) {
>>   		if (name_only) {
>>   			printf("%s ", aliases[j]);
>> +			count++;
>>   			continue;
>>   		}
>>   		printf("  %-50s [Kernel PMU event]\n", aliases[j]);
>>   		zfree(&aliases[j]);
>> -		printed++;
>> +		count++;
>>   	}
>> -	if (printed)
>> +	if (count)
>>   		printf("\n");
>>   	free(aliases);
>> +	return count;
>>   }
>>   
>>   bool pmu_have_event(const char *pname, const char *name)
>> diff --git a/tools/perf/util/pmu.h b/tools/perf/util/pmu.h
>> index 9183380..2987fe2 100644
>> --- a/tools/perf/util/pmu.h
>> +++ b/tools/perf/util/pmu.h
>> @@ -42,7 +42,7 @@ int perf_pmu__format_parse(char *dir, struct list_head *head);
>>   
>>   struct perf_pmu *perf_pmu__scan(struct perf_pmu *pmu);
>>   
>> -void print_pmu_events(const char *event_glob, bool name_only);
>> +unsigned int print_pmu_events(const char *event_glob, bool name_only);
>>   bool pmu_have_event(const char *pname, const char *name);
>>   
>>   int perf_pmu__test(void);
>> -- 
>> 1.8.2.1
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
>

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ