On 15/11/2020 23:17, Jiri Olsa wrote:
> On Fri, Nov 13, 2020 at 07:26:43PM +0200, James Clark wrote:
>> Use the existing allocator for perf_cpu_map to avoid use
>> of raw malloc. This could cause an issue in later commits
>> where the size of perf_cpu_map is changed.
>>
>> No functional changes.
>>
>> Signed-off-by: James Clark <james.cl...@arm.com>
>> Cc: Peter Zijlstra <pet...@infradead.org>
>> Cc: Ingo Molnar <mi...@redhat.com>
>> Cc: Arnaldo Carvalho de Melo <a...@kernel.org>
>> Cc: Mark Rutland <mark.rutl...@arm.com>
>> Cc: Alexander Shishkin <alexander.shish...@linux.intel.com>
>> Cc: Jiri Olsa <jo...@redhat.com>
>> Cc: Namhyung Kim <namhy...@kernel.org>
>> Cc: Thomas Richter <tmri...@linux.ibm.com>
>> Cc: John Garry <john.ga...@huawei.com>
>> ---
>>  tools/perf/util/cpumap.c | 7 ++++---
>>  1 file changed, 4 insertions(+), 3 deletions(-)
>>
>> diff --git a/tools/perf/util/cpumap.c b/tools/perf/util/cpumap.c
>> index dc5c5e6fc502..fd7d0a77a9e6 100644
>> --- a/tools/perf/util/cpumap.c
>> +++ b/tools/perf/util/cpumap.c
>> @@ -132,15 +132,16 @@ int cpu_map__build_map(struct perf_cpu_map *cpus, 
>> struct perf_cpu_map **res,
>>                     int (*f)(struct perf_cpu_map *map, int cpu, void *data),
>>                     void *data)
>>  {
>> -    struct perf_cpu_map *c;
>>      int nr = cpus->nr;
>> +    struct perf_cpu_map *c = perf_cpu_map__empty_new(nr);
>>      int cpu, s1, s2;
>>  
>> -    /* allocate as much as possible */
>> -    c = calloc(1, sizeof(*c) + nr * sizeof(int));
>>      if (!c)
>>              return -1;
>>  
>> +    /* Reset size as it may only be partially filled */
>> +    c->nr = 0;
>> +
>>      for (cpu = 0; cpu < nr; cpu++) {
>>              s1 = f(cpus, cpu, data);
>>              for (s2 = 0; s2 < c->nr; s2++) {
> 
> also remove refcount_set call down here,
> it's already in set in perf_cpu_map__empty_new

Oops yeah, good catch. Removed in V5

James
> 
> thanks,
> jirka
> 
>> -- 
>> 2.28.0
>>
> 

Reply via email to