From: James Clark <james.clark@arm.com>
To: Jiri Olsa <jolsa@redhat.com>
Cc: linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org,
Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@redhat.com>,
Arnaldo Carvalho de Melo <acme@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Namhyung Kim <namhyung@kernel.org>,
Thomas Richter <tmricht@linux.ibm.com>,
John Garry <john.garry@huawei.com>
Subject: Re: [PATCH 02/13 v4] perf tools: Use allocator for perf_cpu_map
Date: Tue, 17 Nov 2020 16:50:21 +0200 [thread overview]
Message-ID: <ba3819b1-8bb3-7bf8-7c80-3698a45f75f1@arm.com> (raw)
In-Reply-To: <20201115211732.GB1081385@krava>
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.clark@arm.com>
>> Cc: Peter Zijlstra <peterz@infradead.org>
>> Cc: Ingo Molnar <mingo@redhat.com>
>> Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
>> Cc: Mark Rutland <mark.rutland@arm.com>
>> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
>> Cc: Jiri Olsa <jolsa@redhat.com>
>> Cc: Namhyung Kim <namhyung@kernel.org>
>> Cc: Thomas Richter <tmricht@linux.ibm.com>
>> Cc: John Garry <john.garry@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
>>
>
next prev parent reply other threads:[~2020-11-17 14:50 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-13 17:26 [PATCH 00/13 v4] perf tools: fix perf stat with large socket IDs James Clark
2020-11-13 17:26 ` [PATCH 01/13 v4] perf tools: Improve topology test James Clark
2020-11-13 17:26 ` [PATCH 02/13 v4] perf tools: Use allocator for perf_cpu_map James Clark
2020-11-15 21:17 ` Jiri Olsa
2020-11-17 14:50 ` James Clark [this message]
2020-11-13 17:26 ` [PATCH 03/13 v4] perf tools: Add new struct for cpu aggregation James Clark
2020-11-13 17:26 ` [PATCH 04/13 v4] perf tools: Replace aggregation ID with a struct James Clark
2020-11-15 21:17 ` Jiri Olsa
2020-11-17 14:51 ` James Clark
2020-11-13 17:26 ` [PATCH 05/13 v4] perf tools: add new map type for aggregation James Clark
2020-11-13 17:26 ` [PATCH 06/13 v4] perf tools: drop in cpu_aggr_map struct James Clark
2020-11-13 17:26 ` [PATCH 07/13 v4] perf tools: restrict visibility of functions James Clark
2020-11-15 21:17 ` Jiri Olsa
2020-11-17 14:52 ` James Clark
2020-11-13 17:26 ` [PATCH 08/13 v4] perf tools: Start using cpu_aggr_id in map James Clark
2020-11-13 17:26 ` [PATCH 09/13 v4] perf tools: Add separate node member James Clark
2020-11-13 17:26 ` [PATCH 10/13 v4] perf tools: Add separate socket member James Clark
2020-11-13 17:26 ` [PATCH 11/13 v4] perf tools: Add separate die member James Clark
2020-11-13 17:26 ` [PATCH 12/13 v4] perf tools: Add separate core member James Clark
2020-11-13 17:26 ` [PATCH 13/13 v4] perf tools: add thread field James Clark
2020-11-15 21:17 ` Jiri Olsa
2020-11-17 14:53 ` James Clark
2020-11-15 21:18 ` [PATCH 00/13 v4] perf tools: fix perf stat with large socket IDs Jiri Olsa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ba3819b1-8bb3-7bf8-7c80-3698a45f75f1@arm.com \
--to=james.clark@arm.com \
--cc=acme@kernel.org \
--cc=alexander.shishkin@linux.intel.com \
--cc=john.garry@huawei.com \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=mingo@redhat.com \
--cc=namhyung@kernel.org \
--cc=peterz@infradead.org \
--cc=tmricht@linux.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®