Received: by 2002:ab2:6857:0:b0:1ef:ffd0:ce49 with SMTP id l23csp2517475lqp; Mon, 25 Mar 2024 00:45:41 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCWUvKTAsgOjnGwgYow/txIhbEOyKuFMhdWdd6qZqJWv1paEj2zeX4fthS2FJ5/xsEAo0UKuPBiAzypdcNVXarDoxe0MwKKir8OfOgn5sw== X-Google-Smtp-Source: AGHT+IGAiYx3SdsMpuGaVHHL6LPBRDLOsjDfYth/xq04z2YKkzvq5iGb/ZFEXEb65NsqhO540cDB X-Received: by 2002:a05:6512:3106:b0:513:e7cc:97fc with SMTP id n6-20020a056512310600b00513e7cc97fcmr4573682lfb.49.1711352741040; Mon, 25 Mar 2024 00:45:41 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1711352741; cv=pass; d=google.com; s=arc-20160816; b=1KP6K8AUc+IDivmv9wJd9lJ1J6phdEaFmlFkj/P0R7aDAExMZsbPkjXCBsjQNUwlmT blx54OxY42YppC+0lfICrYkKL1FLoctoJSY6nWqEhhaW6z9X+FqcYLXBSFT4aK8yXBMh u53MkQF9Eqa3zWUJ9UAR8dVJozSAZuxMB2WlMPcdlMEa5h+ArNx0UiRxTIxkIFgEvop7 PdUupDZfYgc01wK4bNatP6PYjyhImfvRNp8LFcBQe8YJOh4puFby5u5ehxSI9zeXJmEq BA+cO9j3Cw9OqG8x6P0iQpiX1NJkU9V8ijO6YR4DpA4NbSqOm43wy7a4b9AkdEBQR5Ap CIGg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=BHVYkLYg0lAWifJWdobRNgRJ/ujXaJBr+jcbbg/AOew=; fh=W7r57cYOOYAnORoU55s7xz6zGTVorigkRzMhlmgn+As=; b=tf0qBuTJJo4KrK566uLl01JMEXW+nbEfyjtevgB6wT+MBqiBPuAu8X1Cx+0Aaakeqn 2wUuSxfoPDJSvWj+NUKQZKNXeXwXj9E20rvIHmYiNzPvKIJ3WfC1uYBbHRLvV/Xb1hHD 0fRN/xcuh2mpx9hfy1Zv9yGg2EgmRLIWWQPQ/ib0a6K5IoefMYZDg28WWrYni6+BFP6z uklH9DtXEVDK6A8WbroysbGf2QJhdNxPgn0c16jvdclVNUzEfMA7LF8TPbac/WBEResG uhRVtQQbMMKDX26bCOFe3au6gQArcGEqHWyI9McoyntXmA/nLhYInzGWtzNQd3Mkk/sW s7ZQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="lr/+Vgqr"; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-115508-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-115508-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [147.75.80.249]) by mx.google.com with ESMTPS id q3-20020a170906144300b00a46cf63d977si2346973ejc.372.2024.03.25.00.45.40 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 Mar 2024 00:45:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-115508-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) client-ip=147.75.80.249; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="lr/+Vgqr"; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-115508-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-115508-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id BE5461F2BBDB for ; Mon, 25 Mar 2024 07:45:40 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id A96FB237B92; Mon, 25 Mar 2024 02:41:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="lr/+Vgqr" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A21501EC645; Sun, 24 Mar 2024 22:55:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711320950; cv=none; b=nInpGBgEn9jo6nJCBVy/PywLAVXmGBgTZhaqAVabBKq3XDX6zspUDBHtYG2g5R92SqCvFrk5nbcKAZakKhtUG7Zw1EnWLTMLlurR1Pz0GkYeOTjY3SQMKm3EZzrlwBjx93WEEpC0qmvo1YEJpnwXtL/IFnrqZMNNC1g1jBCuVjU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711320950; c=relaxed/simple; bh=sdiZ1qUDoyOouFFJuBLt5ddv90gXD8wwmSNJapd092Q=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=cBlFiPFp5iuS//tqWL8hSbNCUdW9V9w2HXy5lxsY7M8UXdwMuLO/R2fAIV/XeGKpgSCUR7bAVrJ7vO9YXA60mEBI2hkAn5IQtj7IZUP395ITNL6A+m2T6bjCqA8D8QL9GEzXR4Z7BaXFn2ZLhkukR/Bpc7BcGSkDrQLtbw3SiKs= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=lr/+Vgqr; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id B3CDBC433F1; Sun, 24 Mar 2024 22:55:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711320949; bh=sdiZ1qUDoyOouFFJuBLt5ddv90gXD8wwmSNJapd092Q=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lr/+VgqrE6NyKVnXd+Gs5IRVEG94K8jla2UQYRfNPa8GnUyLB5lVaJnZwtFux67gv F4cLLu+YHXGet20mUvMRDk5/7XHMFIfYAnvTxRMC8gX1bZuuucdHITDwgocXObdd2t IC18kRwMF5T9d7OZXBA7XIiBb2vf+fo4yuJhoBFa5vIS4KXTUlELlaQcnYjvbrVudY hPd03y9Me5J0dyadD5QJCIm2H8hb25Yo+kDkEXVwPB+SAQr2XR2WsBNCfJL2F3IamO 0omegl4/MD/5iz7ol4WXScPOULiVJs8W9IKK/UVphGUTQg8Y1HeVKM2hZM6Wsxm5tQ SwQZMJuhyhpRQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Christophe JAILLET , Ian Rogers , kernel-janitors@vger.kernel.org, Namhyung Kim , Sasha Levin Subject: [PATCH 6.7 513/713] perf pmu: Fix a potential memory leak in perf_pmu__lookup() Date: Sun, 24 Mar 2024 18:43:59 -0400 Message-ID: <20240324224720.1345309-514-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324224720.1345309-1-sashal@kernel.org> References: <20240324224720.1345309-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit From: Christophe JAILLET [ Upstream commit ef5de1613d7d92bdc975e6beb34bb0fa94f34078 ] The commit in Fixes has reordered some code, but missed an error handling path. 'goto err' now, in order to avoid a memory leak in case of error. Fixes: f63a536f03a2 ("perf pmu: Merge JSON events with sysfs at load time") Signed-off-by: Christophe JAILLET Reviewed-by: Ian Rogers Cc: kernel-janitors@vger.kernel.org Signed-off-by: Namhyung Kim Link: https://lore.kernel.org/r/9538b2b634894c33168dfe9d848d4df31fd4d801.1693085544.git.christophe.jaillet@wanadoo.fr Signed-off-by: Sasha Levin --- tools/perf/util/pmu.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c index 33e783fc908fe..aaa013af52524 100644 --- a/tools/perf/util/pmu.c +++ b/tools/perf/util/pmu.c @@ -1019,10 +1019,9 @@ struct perf_pmu *perf_pmu__lookup(struct list_head *pmus, int dirfd, const char * type value and format definitions. Load both right * now. */ - if (pmu_format(pmu, dirfd, name)) { - free(pmu); - return NULL; - } + if (pmu_format(pmu, dirfd, name)) + goto err; + pmu->is_core = is_pmu_core(name); pmu->cpus = pmu_cpumask(dirfd, name, pmu->is_core); -- 2.43.0