Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp13386985ybl; Sun, 29 Dec 2019 10:39:19 -0800 (PST) X-Google-Smtp-Source: APXvYqzBAw7zTZCdI6dSkEcM/V9CY+CxIXP1GZArqgSB7hki70kN+8+VmoUGzwPgsV63aPfEgb4t X-Received: by 2002:a05:6830:18e9:: with SMTP id d9mr60624486otf.332.1577644759142; Sun, 29 Dec 2019 10:39:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1577644759; cv=none; d=google.com; s=arc-20160816; b=Ws5CJjPdkS65VEWkppK+pjY4Slz88NRui9hdXmdslzawH6KpWxbnlRN2bJwTnbJ7ay VFWrj9KpBQdwhhIl2yMqEnWwDGJXtgVNZfVd7gUVi5bWNm90a/IaPjet3yjFqFGVqsSt BLr/qqpmMO/HqQizOe2KYD6OzsOz44VAlPq4g/C1KZ2uctfPgKIrNjDs2+kkMIuxwJfQ +FnG+Yi/c7KKQq1jXO3BNt8jPrvqjdZm/8dcx9RHFOCOX16AFoi9tKcbv2DRAPip04N1 2ZReE62t9uZ9uURtmhN2XvVFtOU6psxxyJqGV73Clcg5xlIN7ivJhQcDzM1XYbhboz6h r2VA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=Et4rCWQXhmYQ5T2h6oMJsMSca+D6jKDg6ilvNMof6p8=; b=FDJRTww9BV/HuhOTZoe1rE2BPtwFgbvJesGbaTeGufsPJjMzxlk8aFl/6eKh8d450W N8FcBfh2sOmHn4FczAJ06LC/itFktrJ6Rp9xvlixEyE4ER0F2tcehF2MHeqGhDHe6Wdd qILfZSs21sCjTVek9vyGwTFeBiD17nJjzYUUhZxVpdtRej6fDcxtvxoUbYR5kkOf/kpQ s6H5e12C4HAlUTz7ICvrBD0/R+n7pSz1E4dgYkR1x0IUEx70iGcVOefqNbF7ibk8mMwq VCTZyqzy7ksqXUea6iVAUg0RDZVy85CAj8MQLJ14tPnivUUfVg1BklK3ev3lgdVmtWn0 bVHQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=1fREwNGf; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k131si15549700oia.64.2019.12.29.10.39.07; Sun, 29 Dec 2019 10:39:19 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=1fREwNGf; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727867AbfL2RZD (ORCPT + 99 others); Sun, 29 Dec 2019 12:25:03 -0500 Received: from mail.kernel.org ([198.145.29.99]:44362 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727551AbfL2RZC (ORCPT ); Sun, 29 Dec 2019 12:25:02 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id A1A92207FF; Sun, 29 Dec 2019 17:25:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1577640301; bh=uOqrLXsEjwUWzAjQ9LQuiIhQzPPYLGgPnCRrGNgGqbg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=1fREwNGfdYG9uOLpXgwp2SdDIl0ZcLBzLinr5Ytr55XsGW1njzyCWCQ5nCVsT8wdy pa1M/5huVqG7GGz+ciXAN1jZR4QMiqsQ42+UDieqoTDjUWo+fIms5gLxW35dSm2ZTy lFP/CWLc8QEl7WkuRUUU0Wbqqer1yoSxAChMOFh8= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Ian Rogers , Jiri Olsa , Adrian Hunter , Alexander Shishkin , Alexei Starovoitov , Andi Kleen , Daniel Borkmann , Jin Yao , John Garry , Kan Liang , Mark Rutland , Martin KaFai Lau , Namhyung Kim , Peter Zijlstra , Song Liu , Stephane Eranian , Yonghong Song , bpf@vger.kernel.org, clang-built-linux@googlegroups.com, netdev@vger.kernel.org, Arnaldo Carvalho de Melo , Sasha Levin Subject: [PATCH 4.14 101/161] perf parse: If pmu configuration fails free terms Date: Sun, 29 Dec 2019 18:19:09 +0100 Message-Id: <20191229162427.034921434@linuxfoundation.org> X-Mailer: git-send-email 2.24.1 In-Reply-To: <20191229162355.500086350@linuxfoundation.org> References: <20191229162355.500086350@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Ian Rogers [ Upstream commit 38f2c4226e6bc3e8c41c318242821ba5dc825aba ] Avoid a memory leak when the configuration fails. Signed-off-by: Ian Rogers Acked-by: Jiri Olsa Cc: Adrian Hunter Cc: Alexander Shishkin Cc: Alexei Starovoitov Cc: Andi Kleen Cc: Daniel Borkmann Cc: Jin Yao Cc: John Garry Cc: Kan Liang Cc: Mark Rutland Cc: Martin KaFai Lau Cc: Namhyung Kim Cc: Peter Zijlstra Cc: Song Liu Cc: Stephane Eranian Cc: Yonghong Song Cc: bpf@vger.kernel.org Cc: clang-built-linux@googlegroups.com Cc: netdev@vger.kernel.org Link: http://lore.kernel.org/lkml/20191030223448.12930-9-irogers@google.com Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: Sasha Levin --- tools/perf/util/parse-events.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c index 29e2bb304168..096c52f296d7 100644 --- a/tools/perf/util/parse-events.c +++ b/tools/perf/util/parse-events.c @@ -1253,8 +1253,15 @@ static int __parse_events_add_pmu(struct parse_events_state *parse_state, if (get_config_terms(head_config, &config_terms)) return -ENOMEM; - if (perf_pmu__config(pmu, &attr, head_config, parse_state->error)) + if (perf_pmu__config(pmu, &attr, head_config, parse_state->error)) { + struct perf_evsel_config_term *pos, *tmp; + + list_for_each_entry_safe(pos, tmp, &config_terms, list) { + list_del_init(&pos->list); + free(pos); + } return -EINVAL; + } evsel = __add_event(list, &parse_state->idx, &attr, get_config_name(head_config), pmu, -- 2.20.1