Message ID | 20230607014353.3172466-20-irogers@google.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show
Return-Path: <linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org> X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id ADB3EC77B7A for <linux-arm-kernel@archiver.kernel.org>; Wed, 7 Jun 2023 02:49:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:To:From:Subject:References:Mime-Version :Message-Id:In-Reply-To:Date:Reply-To:Cc:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=YvhdwQDlEaJ8NPuw3kV9ke7WoaXD3y6ztw0KbG65o7A=; b=Dw5XtTnIBZhBNw klCnQFQehIw5iKw2czcOJRu5UVcDly1MkNf7XURjGn9Zj9o/7wsIyU1xDcTdGx+IrSYmTUKEv6RGF hrjwy+4G0Up5I2UvlPD2aa75gVY6f8yUzCoaDkn1QGpvh1rGKATbPXuPyOeBf1udjsmVnMQxmPLbo jc7MbCoKFi8+ur8fpZnAUfvNIToN7gill69UiQ1brfARzti8kcLoFEP+NsKXs4R6aON/YpDpZ57tR mZzV6l8FaB9o6z//TRaaiXe6wFtuXLs1u4IXncp+G1EbhOgreT8QFtaPyeusyVdLArRfq5q0lLS7C pit+SFxkPa7r++WcXOKA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1q6jEs-0043SE-2c; Wed, 07 Jun 2023 02:49:34 +0000 Received: from desiato.infradead.org ([2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1q6jEo-0043Ql-2y for linux-arm-kernel@bombadil.infradead.org; Wed, 07 Jun 2023 02:49:31 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=Content-Type:To:From:Subject: References:Mime-Version:Message-Id:In-Reply-To:Date:Sender:Reply-To:Cc: Content-Transfer-Encoding:Content-ID:Content-Description; bh=QuS1g2OU4yoVfTehaUhzg1FIn5MgKlKDgdWGzdr+k/Y=; b=PrJPlPUZimAGdZle9hfgep9fsf 64J4Gh/H1ta3lPQgX5/FfMNMVSTvkNxsLhuDw7wDxUYzIOcoUvqoBYrov+Ahk1QX6o22TigP0FS8/ ZmdHAZTgsU0+WGOe7KSPzEfaDew0uqUNQRP/0q7YqBOKkKqHMXa2vbsFe3qBocYLCJgQAAsuaPx6g ev7RWzUJG0BfQvU6YEdU/s6BZAMKzbhEkPAP1w4WM69NAiMASxYHpS86+GOW1AfJ64NuWItBu1EpZ psE8v8OKHR9Pyy1enn8QkgIiCFJW0mDFr9gyw0Th9hHkmcJK7Ca7WhHzl/VHcxD6aI41652xXTeHe KWoyWiLw==; Received: from mail-yb1-xb4a.google.com ([2607:f8b0:4864:20::b4a]) by desiato.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1q6iEJ-004H4U-0v for linux-arm-kernel@lists.infradead.org; Wed, 07 Jun 2023 01:44:57 +0000 Received: by mail-yb1-xb4a.google.com with SMTP id 3f1490d57ef6-ba8c3186735so9779205276.3 for <linux-arm-kernel@lists.infradead.org>; Tue, 06 Jun 2023 18:44:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1686102293; x=1688694293; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :from:to:cc:subject:date:message-id:reply-to; bh=QuS1g2OU4yoVfTehaUhzg1FIn5MgKlKDgdWGzdr+k/Y=; b=3YXEoKEN/nNf8meRVsOJ1z5FiTdMKpnE0acbngVa8MNgyD/uTLdtXgLV0bsixkPj57 lSWKN3fiJ90VGXJfyQel994lr6YvUOCXS/R3GYR1hyvBtlLK76XJKeGnjdvzam8PHr+S j4IxI8Na0ijl28ty7RXKSFVWmKAO0A9ZWxNxSfP7kef2QGMQfbSPPyJXTx8aQc9AFE7L 10/t611pIk0rU+SEWAQh9Id6Byfkwtr68chQpUXFuBKZcK0tM9rcYkTyZlTmmMacoWfk Q0EwxFdwJVuO27jERgV/8nBtbiqF8AXfPumLwdAqWAkX0+9cnTffbhgtdT8H/DvuevSj Jq4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686102293; x=1688694293; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=QuS1g2OU4yoVfTehaUhzg1FIn5MgKlKDgdWGzdr+k/Y=; b=gfC1r1a0lBHDHWlKAtr6H4VClEYesTI/nXF7adLLecjSNv8XyDkSAhlILob7topWem yXRM6BzFPgR7o5fwhD95WjEL/ymuPX06B9wqsis/XieuhVJHon2Mr1WExLU5EgaQAs9o +5D+68U6SNKhelZNcdaNTiOY2GQjEReG1cxpjdudsDTC3gBH7+x53vkvGqokivxh4lBv xrURt2SFanolgQLeI7mzO09DTo5i5/b8gCLLS0RNTRKptj67O7Pv7L9zjMq9TMIeBSrB CBorrGwCEXrSVmT4OqjHoi2olES4zujZbXIJxrAwQtOYGqxC4omktseb12FvcxTvECJL +UQg== X-Gm-Message-State: AC+VfDws2GoJKAW3MGT4jU+9U5UfuDMbtWiOKxxW3arha8LYEsCTU1p+ X81pRrdYGJHo/jC6GR5ixMTL4EnMXLR6 X-Google-Smtp-Source: ACHHUZ7B7dQh8LL+jibikCYHFed+NMRUjP9zCbM9Dik4oJML+erCgoy6oLY5pMrFhCuumxHSGhJClC8+wNVr X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:3c35:209f:5d38:b7a1]) (user=irogers job=sendgmr) by 2002:a05:6902:1546:b0:b9f:14a5:b3b5 with SMTP id r6-20020a056902154600b00b9f14a5b3b5mr1437471ybu.6.1686102293264; Tue, 06 Jun 2023 18:44:53 -0700 (PDT) Date: Tue, 6 Jun 2023 18:43:52 -0700 In-Reply-To: <20230607014353.3172466-1-irogers@google.com> Message-Id: <20230607014353.3172466-20-irogers@google.com> Mime-Version: 1.0 References: <20230607014353.3172466-1-irogers@google.com> X-Mailer: git-send-email 2.41.0.rc0.172.g3f132b7071-goog Subject: [PATCH v1 19/20] perf machine: Don't leak module maps From: Ian Rogers <irogers@google.com> To: John Garry <john.g.garry@oracle.com>, Will Deacon <will@kernel.org>, James Clark <james.clark@arm.com>, Mike Leach <mike.leach@linaro.org>, Leo Yan <leo.yan@linaro.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>, Jiri Olsa <jolsa@kernel.org>, Namhyung Kim <namhyung@kernel.org>, Ian Rogers <irogers@google.com>, Adrian Hunter <adrian.hunter@intel.com>, Suzuki K Poulose <suzuki.poulose@arm.com>, "Naveen N. Rao" <naveen.n.rao@linux.vnet.ibm.com>, Kan Liang <kan.liang@linux.intel.com>, German Gomez <german.gomez@arm.com>, Ali Saidi <alisaidi@amazon.com>, Jing Zhang <renyu.zj@linux.alibaba.com>, " =?utf-8?q?Martin_Li=C5=A1ka?= " <mliska@suse.cz>, Athira Rajeev <atrajeev@linux.vnet.ibm.com>, Miguel Ojeda <ojeda@kernel.org>, ye xingchen <ye.xingchen@zte.com.cn>, Liam Howlett <liam.howlett@oracle.com>, Dmitrii Dolgov <9erthalion6@gmail.com>, "Shawn M. Chapla" <schapla@codeweavers.com>, Yang Jihong <yangjihong1@huawei.com>, K Prateek Nayak <kprateek.nayak@amd.com>, Changbin Du <changbin.du@huawei.com>, Ravi Bangoria <ravi.bangoria@amd.com>, Sean Christopherson <seanjc@google.com>, Raul Silvera <rsilvera@google.com>, Andi Kleen <ak@linux.intel.com>, "Steinar H. Gunderson" <sesse@google.com>, Yuan Can <yuancan@huawei.com>, Brian Robbins <brianrob@linux.microsoft.com>, liuwenyu <liuwenyu7@huawei.com>, Ivan Babrou <ivan@cloudflare.com>, Fangrui Song <maskray@google.com>, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-perf-users@vger.kernel.org, coresight@lists.linaro.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230607_024455_492137_D3925725 X-CRM114-Status: GOOD ( 15.55 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: <linux-arm-kernel.lists.infradead.org> List-Unsubscribe: <http://lists.infradead.org/mailman/options/linux-arm-kernel>, <mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe> List-Archive: <http://lists.infradead.org/pipermail/linux-arm-kernel/> List-Post: <mailto:linux-arm-kernel@lists.infradead.org> List-Help: <mailto:linux-arm-kernel-request@lists.infradead.org?subject=help> List-Subscribe: <http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>, <mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" <linux-arm-kernel-bounces@lists.infradead.org> Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org |
Series |
Reference count checking for thread
|
expand
|
diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c index f8e6c07f0048..359ef6b4e840 100644 --- a/tools/perf/util/machine.c +++ b/tools/perf/util/machine.c @@ -1797,7 +1797,6 @@ static int machine__process_kernel_mmap_event(struct machine *machine, struct extra_kernel_map *xm, struct build_id *bid) { - struct map *map; enum dso_space_type dso_space; bool is_kernel_mmap; const char *mmap_name = machine->mmap_name; @@ -1823,8 +1822,8 @@ static int machine__process_kernel_mmap_event(struct machine *machine, } if (xm->name[0] == '/' || (!is_kernel_mmap && xm->name[0] == '[')) { - map = machine__addnew_module_map(machine, xm->start, - xm->name); + struct map *map = machine__addnew_module_map(machine, xm->start, xm->name); + if (map == NULL) goto out_problem; @@ -1833,6 +1832,7 @@ static int machine__process_kernel_mmap_event(struct machine *machine, if (build_id__is_defined(bid)) dso__set_build_id(map__dso(map), bid); + map__put(map); } else if (is_kernel_mmap) { const char *symbol_name = xm->name + strlen(mmap_name); /*
machine__addnew_module_map requires a put on its result. Add this and narrow the scope of map to make the correctness more obvious. This leak was caught with leak sanitizer and the reference count checker. Signed-off-by: Ian Rogers <irogers@google.com> --- tools/perf/util/machine.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)