From patchwork Sun Sep 25 23:40:53 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yun Levi X-Patchwork-Id: 12988152 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4BDF8C04A95 for ; Sun, 25 Sep 2022 23:41:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A4A7B8E0023; Sun, 25 Sep 2022 19:41:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9F9828E0007; Sun, 25 Sep 2022 19:41:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8C1A98E0023; Sun, 25 Sep 2022 19:41:11 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 7A6B78E0007 for ; Sun, 25 Sep 2022 19:41:11 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 4DF3A1603EF for ; Sun, 25 Sep 2022 23:41:11 +0000 (UTC) X-FDA: 79952231142.12.E761DF8 Received: from mail-pg1-f174.google.com (mail-pg1-f174.google.com [209.85.215.174]) by imf23.hostedemail.com (Postfix) with ESMTP id 09B03140004 for ; Sun, 25 Sep 2022 23:41:10 +0000 (UTC) Received: by mail-pg1-f174.google.com with SMTP id b5so5094200pgb.6 for ; Sun, 25 Sep 2022 16:41:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:reply-to:message-id:date :subject:cc:to:from:from:to:cc:subject:date; bh=EJWUlJuWSVweYYTQ+dItlLI+eSuI7yW2uCV4qAeh0kU=; b=fvq4fpbn3ex+gwHX+Is+B+dE0MRJelLSlfgQAPd1J5zp31ufQE9hhklVsXrBbCLY5l iA3+XPDSiAKcJ6mJeXLXyntX+a3+kqJYl8aAmVIymy4Dv2DZ5+GrQKPHigkntjj+0GW+ 7DFbLi6GhVE7UUghq0oNPoEpRytFv2SUMgVFAWXshdfMfm8W9+/uuSLJlPq5cqGWDO6s gAhV5YunS46z+xHoT+RJYi4H4fzhRhf3GsRTLWF5jqQyPVStjpxitrUGj6tPqy1kSLWi zU1Y9Ik6jA5ejRuJB5xB16Za7okYXKPeQaZASMSq2N0yMtiwOmjXdc07zetVZ278HdJL CkkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:reply-to:message-id:date :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date; bh=EJWUlJuWSVweYYTQ+dItlLI+eSuI7yW2uCV4qAeh0kU=; b=m8caUciLwxHP+tnAySOf0XV8/xM0wwWEKOSErlMQg/2ArBbewT8798BXYonh6IqeN3 fVq7rP13UlmmZLaydiyE0ZBZ+Y2RosqQtrfaUapEglPEHWz58j0bPqclirFq9BC7fbZi LYGFLCe4Z7FR43Kr0iR8c4HmotIrP2QE9NXPaRulhU93RhahEpnZxKR3wpORnou3o5SI AsQA00u2UWBb723J3ESVf2yk/AVXehut6owiFnJO5MyDamEcqx9ukxqYhgaGOx2r0RvF xOxLtwXfrN7bdJNUFDQKwvI2w2xHvvKEfXPwhJcLyTVB/Yq+K0Ypbhpwr9vTseaGHa7H sNqQ== X-Gm-Message-State: ACrzQf2+DfygduFlqktH/mr822HMjC7w40wlSSsPRbKxFcXE2j7gWxYH 8UItW0sUFDZiTqSLGTugXXI= X-Google-Smtp-Source: AMsMyM40BIFfZsnDm1JHPvOt0jtCuwgk+xHwkawWyFYYWJ9W7tiXOIg8/mipSMShx2tnhDGtpXUJ8g== X-Received: by 2002:a65:40c8:0:b0:434:dfee:8dc1 with SMTP id u8-20020a6540c8000000b00434dfee8dc1mr18072970pgp.156.1664149269775; Sun, 25 Sep 2022 16:41:09 -0700 (PDT) Received: from localhost.localdomain ([211.226.85.205]) by smtp.gmail.com with ESMTPSA id b27-20020aa78edb000000b0052d417039c2sm10584739pfr.133.2022.09.25.16.41.07 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sun, 25 Sep 2022 16:41:09 -0700 (PDT) From: Levi Yun To: sj@kernel.org Cc: akpm@linux-foundation.org, damon@lists.linux.dev, linux-mm@kvack.org, Levi Yun Subject: [PATCH v2] damon/sysfs: Fix possible memleak on damon_sysfs_add_target. Date: Mon, 26 Sep 2022 08:40:53 +0900 Message-Id: <20220925234053.26090-1-ppbuk5246@gmail.com> X-Mailer: git-send-email 2.35.1 Reply-To: <20220925140257.23431-1-ppbuk5246@gmail.com> MIME-Version: 1.0 ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=fvq4fpbn; spf=pass (imf23.hostedemail.com: domain of ppbuk5246@gmail.com designates 209.85.215.174 as permitted sender) smtp.mailfrom=ppbuk5246@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1664149271; a=rsa-sha256; cv=none; b=2qglUNmmKzR5z+61fq9cbLh06THeSOmqYvkQCzXPNUO9mNnd6B4PFNXXP4PqYMSpSLQV5j zdjhAvns7+UaozXXxCuyRVd4lmUqIelgJozZqCNoh1dpfKaf0HOPQiOrcQOuG85T1rbIqW jFWNKTQGzxe9JIrGqxPjPjWPSjiqlwA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1664149271; h=from:from:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=EJWUlJuWSVweYYTQ+dItlLI+eSuI7yW2uCV4qAeh0kU=; b=v1qpi9WiqzMjjZwlUrF/6jMwSSQiWOgI+qihYME5waESKyUo8ju9KktfWST8LNqt0sH3Xe /LOp0XgWtlIppozYOuyTScqolf4i6+40bttZW9/Leh2gFOhlX6rPvInjeyAQ5XSTgASKZn YjzDpMS/aDkFQIdPYUj0HlHtdNS3XBw= X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 09B03140004 Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=fvq4fpbn; spf=pass (imf23.hostedemail.com: domain of ppbuk5246@gmail.com designates 209.85.215.174 as permitted sender) smtp.mailfrom=ppbuk5246@gmail.com; dmarc=pass (policy=none) header.from=gmail.com X-Stat-Signature: cjikrjdzir3tt3th791h9wj11qou8jis X-Rspam-User: X-HE-Tag: 1664149270-478510 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: When damon_sysfs_add_target couldn't find proper task, New allocated damon_target structure isn't registered yet, So, it's impossible to free new allocated one by damon_sysfs_destroy_targets. By calling damon_add_target first as soon as allocate new one, Fix possible memory leak. Signed-off-by: Levi Yun --- mm/damon/sysfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.35.1 diff --git a/mm/damon/sysfs.c b/mm/damon/sysfs.c index 7488e27c87c3..bdef9682d0a0 100644 --- a/mm/damon/sysfs.c +++ b/mm/damon/sysfs.c @@ -2182,12 +2182,12 @@ static int damon_sysfs_add_target(struct damon_sysfs_target *sys_target, if (!t) return -ENOMEM; + damon_add_target(ctx, t); if (damon_target_has_pid(ctx)) { t->pid = find_get_pid(sys_target->pid); if (!t->pid) goto destroy_targets_out; } - damon_add_target(ctx, t); err = damon_sysfs_set_regions(t, sys_target->regions); if (err) goto destroy_targets_out;