From: Likhitha Korrapati <likhitha@linux.ibm.com>
To: acme@kernel.org, jolsa@kernel.org, adrian.hunter@intel.com,
irogers@google.com, namhyung@kernel.org
Cc: linux-perf-users@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
maddy@linux.ibm.com, atrajeev@linux.ibm.com,
Likhitha Korrapati <likhitha@linux.ibm.com>
Subject: [PATCH] tools/lib/perf: Fix -Werror=alloc-size-larger-than in cpumap.c
Date: Sun, 6 Apr 2025 22:04:12 +0530 [thread overview]
Message-ID: <20250406163412.897313-1-likhitha@linux.ibm.com> (raw)
perf build break observed when using gcc 13-3 (FC39 ppc64le)
with the following error.
cpumap.c: In function 'perf_cpu_map__merge':
cpumap.c:414:20: error: argument 1 range [18446744069414584320, 18446744073709551614] exceeds maximum object size 9223372036854775807 [-Werror=alloc-size-larger-than=]
414 | tmp_cpus = malloc(tmp_len * sizeof(struct perf_cpu));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from cpumap.c:4:
/usr/include/stdlib.h:672:14: note: in a call to allocation function 'malloc' declared here
672 | extern void *malloc (size_t __size) __THROW __attribute_malloc__
| ^~~~~~
cc1: all warnings being treated as errors
Error happens to be only in gcc13-3 and not in latest gcc 14.
Even though git-bisect pointed bad commit as:
'commit f5b07010c13c ("libperf: Don't remove -g when EXTRA_CFLAGS are used")',
issue is with tmp_len being "int". It holds number of cpus and making
it "unsigned int" fixes the issues.
After the fix:
CC util/pmu-flex.o
CC util/expr-flex.o
LD util/perf-util-in.o
LD perf-util-in.o
AR libperf-util.a
LINK perf
GEN python/perf.cpython-312-powerpc64le-linux-gnu.so
Signed-off-by: Likhitha Korrapati <likhitha@linux.ibm.com>
---
tools/lib/perf/cpumap.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/lib/perf/cpumap.c b/tools/lib/perf/cpumap.c
index 4454a5987570..c7c784e18225 100644
--- a/tools/lib/perf/cpumap.c
+++ b/tools/lib/perf/cpumap.c
@@ -398,7 +398,7 @@ bool perf_cpu_map__is_subset(const struct perf_cpu_map *a, const struct perf_cpu
int perf_cpu_map__merge(struct perf_cpu_map **orig, struct perf_cpu_map *other)
{
struct perf_cpu *tmp_cpus;
- int tmp_len;
+ unsigned int tmp_len;
int i, j, k;
struct perf_cpu_map *merged;
--
2.43.5
next reply other threads:[~2025-04-06 16:34 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-06 16:34 Likhitha Korrapati [this message]
2025-04-06 18:40 ` [PATCH] tools/lib/perf: Fix -Werror=alloc-size-larger-than in cpumap.c Athira Rajeev
2025-04-07 12:08 ` Venkat Rao Bagalkote
2025-04-14 1:38 ` Madhavan Srinivasan
2025-04-25 14:49 ` Athira Rajeev
2025-04-25 17:46 ` Arnaldo Carvalho de Melo
2025-04-28 16:12 ` Likhitha Korrapati
2025-04-28 16:19 ` Likhitha Korrapati
2025-04-29 5:11 ` Likhitha Korrapati
2025-05-02 7:44 ` Mukesh Kumar Chaurasiya
2025-05-13 21:13 ` Arnaldo Carvalho de Melo
2025-05-13 22:12 ` Ian Rogers
2025-05-13 22:36 ` Ian Rogers
2025-05-21 13:03 ` Likhitha Korrapati
2025-05-21 15:45 ` Ian Rogers
2025-05-21 17:28 ` Likhitha Korrapati
2025-05-21 17:39 ` Ian Rogers
2025-05-02 9:05 ` Likhitha Korrapati
2025-04-07 5:39 ` Mukesh Kumar Chaurasiya
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=20250406163412.897313-1-likhitha@linux.ibm.com \
--to=likhitha@linux.ibm.com \
--cc=acme@kernel.org \
--cc=adrian.hunter@intel.com \
--cc=atrajeev@linux.ibm.com \
--cc=irogers@google.com \
--cc=jolsa@kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=maddy@linux.ibm.com \
--cc=namhyung@kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.