From nobody Wed Dec 17 15:39:02 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2253BC61DF4 for ; Fri, 24 Nov 2023 09:27:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230380AbjKXJ1D (ORCPT ); Fri, 24 Nov 2023 04:27:03 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39636 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229705AbjKXJ1A (ORCPT ); Fri, 24 Nov 2023 04:27:00 -0500 Received: from cmccmta2.chinamobile.com (cmccmta4.chinamobile.com [111.22.67.137]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id C6820D68; Fri, 24 Nov 2023 01:27:03 -0800 (PST) X-RM-TagInfo: emlType=0 X-RM-SPAM-FLAG: 00000000 Received: from spf.mail.chinamobile.com (unknown[10.188.0.87]) by rmmx-syy-dmz-app08-12008 (RichMail) with SMTP id 2ee865606c655ca-855ca; Fri, 24 Nov 2023 17:27:01 +0800 (CST) X-RM-TRANSID: 2ee865606c655ca-855ca X-RM-TagInfo: emlType=0 X-RM-SPAM-FLAG: 00000000 Received: from localhost.localdomain.localdomain (unknown[10.54.5.252]) by rmsmtp-syy-appsvr01-12001 (RichMail) with SMTP id 2ee165606c63cde-0afff; Fri, 24 Nov 2023 17:27:01 +0800 (CST) X-RM-TRANSID: 2ee165606c63cde-0afff From: zhaimingbing To: Namhyung Kim , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Ian Rogers , Adrian Hunter , Sean Christopherson , Li Dong Cc: linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org, zhaimingbing Subject: [PATCH] perf lock: Fix a memory leak on an error path Date: Fri, 24 Nov 2023 17:26:57 +0800 Message-Id: <20231124092657.10392-1-zhaimingbing@cmss.chinamobile.com> X-Mailer: git-send-email 2.33.0 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" if a strdup-ed string is NULL,the allocated memory needs freeing. Signed-off-by: zhaimingbing --- tools/perf/builtin-lock.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/perf/builtin-lock.c b/tools/perf/builtin-lock.c index b141f2134..086041bcb 100644 --- a/tools/perf/builtin-lock.c +++ b/tools/perf/builtin-lock.c @@ -2228,8 +2228,10 @@ static int __cmd_record(int argc, const char **argv) else ev_name =3D strdup(contention_tracepoints[j].name); =20 - if (!ev_name) + if (!ev_name) { + free(rec_argv); return -ENOMEM; + } =20 rec_argv[i++] =3D "-e"; rec_argv[i++] =3D ev_name; --=20 2.33.0