From mboxrd@z Thu Jan 1 00:00:00 1970 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 00AA5C64EC4 for ; Wed, 22 Feb 2023 06:28:51 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 04E776B0071; Wed, 22 Feb 2023 01:28:51 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id F40FB6B0073; Wed, 22 Feb 2023 01:28:50 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E08DC6B0074; Wed, 22 Feb 2023 01:28:50 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id CCC056B0071 for ; Wed, 22 Feb 2023 01:28:50 -0500 (EST) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 91392160B39 for ; Wed, 22 Feb 2023 06:28:50 +0000 (UTC) X-FDA: 80493949620.26.3EE6114 Received: from mailgw02.mediatek.com (mailgw02.mediatek.com [216.200.240.185]) by imf25.hostedemail.com (Postfix) with ESMTP id 4E579A0013 for ; Wed, 22 Feb 2023 06:28:44 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=mediatek.com header.s=dk header.b=Wy5W7Pma; dmarc=pass (policy=quarantine) header.from=mediatek.com; spf=pass (imf25.hostedemail.com: domain of andrew.yang@mediatek.com designates 216.200.240.185 as permitted sender) smtp.mailfrom=andrew.yang@mediatek.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1677047328; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=GlIiKdz81RC+WT6ye6XFZWOPht8IFh4/MI/IcySt7tk=; b=PP4ftaDJm3jWOuNSLFXM8eeSOR8f8+m3+AHSn9uEdG/Qj6vYXSRIrYoNG/LsIxqMV2eWGq RJhWV5d2hdx0Yihg1uA1bZv4LK3tZZdh5g9S1/vzlWkpQz6XbkPEX0SG+qqmjGvM17PqNV NQ4D8nHFSVrkEnMYaJibvNds4MeZWk8= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=mediatek.com header.s=dk header.b=Wy5W7Pma; dmarc=pass (policy=quarantine) header.from=mediatek.com; spf=pass (imf25.hostedemail.com: domain of andrew.yang@mediatek.com designates 216.200.240.185 as permitted sender) smtp.mailfrom=andrew.yang@mediatek.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1677047328; a=rsa-sha256; cv=none; b=R2y1bfW4+rt7SAKsQx8bADj090TjPhRkTnUFh9Uax95HEUAwFcQLmVO8M4WlEfTOguPhal 8eJYRrkTGep16dbWota9i28pcQWQtaOGfc3htvtuTGIe9s7ls8ajgdX9rnMKigHkEOsljv sQysFImpp3rLZMWtF2juLr0Pmon0CYQ= X-UUID: 241f503cb27a11eda08d4d6090ec5a5c-20230221 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Type:MIME-Version:Message-ID:Date:Subject:CC:To:From; bh=GlIiKdz81RC+WT6ye6XFZWOPht8IFh4/MI/IcySt7tk=; b=Wy5W7Pma7ksrsOWmCqdALFtvC2TG9DiuPqdcpe8rFJx0sULsSyYjxbelVrC4lrS6IIT2ULuqVVe4sGqu9mVaiwzzA5TRngbFm1pXJlCQiBb06vvrXF3mWpCIJB0h+Ok/R4J1DebHGio5Qu8e7tjuESz5sBHH5A0aVycuCA2euOk=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.20,REQID:b5f48757-0239-4ee0-9146-e58b6f06fa90,IP:0,U RL:0,TC:0,Content:0,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION: release,TS:0 X-CID-META: VersionHash:25b5999,CLOUDID:2ee15426-564d-42d9-9875-7c868ee415ec,B ulkID:nil,BulkQuantity:0,Recheck:0,SF:102,TC:nil,Content:0,EDM:-3,IP:nil,U RL:0,File:nil,Bulk:nil,QS:nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0 X-CID-BVR: 0 X-UUID: 241f503cb27a11eda08d4d6090ec5a5c-20230221 Received: from mtkmbs11n1.mediatek.inc [(172.21.101.185)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 1471509684; Tue, 21 Feb 2023 23:28:38 -0700 Received: from mtkmbs13n1.mediatek.inc (172.21.101.193) by mtkmbs10n2.mediatek.inc (172.21.101.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.792.3; Wed, 22 Feb 2023 14:28:02 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkmbs13n1.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.792.15 via Frontend Transport; Wed, 22 Feb 2023 14:28:02 +0800 From: Andrew Yang To: SeongJae Park , Andrew Morton , Matthias Brugger , AngeloGioacchino Del Regno CC: , , andrew.yang , , , , , Subject: [PATCH v2] mm/damon/paddr: fix missing folio_put() Date: Wed, 22 Feb 2023 14:27:54 +0800 Message-ID: <20230222062758.6183-1-andrew.yang@mediatek.com> X-Mailer: git-send-email 2.18.0 MIME-Version: 1.0 Content-Type: text/plain X-MTK: N X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 4E579A0013 X-Stat-Signature: sq4kzbitnqti6m5h9649dufturh45j63 X-HE-Tag: 1677047324-953870 X-HE-Meta: U2FsdGVkX18IgG6sPJyafTvSJ7Oz/SK+DHQrbZ9UsXcwJFJ/Otzz44n8cCV3xDE8c+ZpyDLbM5Hvo0YMM5EeNaAILOiZtVLkGxGk/rp44DXLB8PJRHWZt4QfIzfqUT9LV7LObcGc2mKgtmJ+NIudIJWuWp7A2MfmHM1NuCd73LXhlHXaIbFzapf3YA73N9ZeMAzOfW9YX6y8xOO23vnyGWJHFNaPWQLztudbMFCLMcfim2LQQ5rKJiHaxzTmGy6KMOg++LBasz/WiI+g9Ep1v2JM3+RWYhNF6EdBYBqb3DhK7hQgZymbDCHngJERB/7FeelHBTLm9k5tsi+uFum42V7f4kTNG3xj5K/Cxs0ACHXe0qZO7DntIUbr1sWfPpgosN2e+XTyvcq7O/N65UbHxUm5YPU/SID5kjAid7mo7RbdTahK3/vkcEYm21JeobBWuX97180OajOqQOQNtmk7VQrH7XzuXm5p+DtIrZGJkSUa6Fp5qVSrZ21HTbHmKka0823TA8viqq+xuXK7iqVOKpyD+6tnIEylDRDQDxDHInkSBvnTUbWhzO8Y2jFolIZplX61bbc9oGqAYscyDxPrCZPZoIcHF5+NH0rkiqL8EHQyCf8YJFJsb0lgyqRV+sCAV32zqLwQ3nhbPkSNlgD4H6wgGFBhVUVNLlelj6Kc91DqNb8+x7jAIEpe07a7ltkhKJo0wa4FYF3qEAs3MF59z5/SqHE7U63Ev7rXfQvrjCAnfmmHNh1CDo45G+qCidAa8NLKOpVrceEMlX9hMbo129wV3mgRa3sVa8a+Vu4hZhplxg/ejYbHlWcTlyea8DjjvMJf0faFvoWqQQo4c+oa/iyBP2csoycX39MPoJstb7hles4YPBrHrmCkqGY5rv6ZSrm/2N5GeFoG15UucCHEz8SxC1vBN9gmO+sH81lgUiWNp9pTsrNGfXUEuu7PC1Jq3ufrTKz96B8snpzDv9M PyfVIaHo EYQp/qIaU6yK1ahyfsNT2O2LWnsXgDid53llm9ZNzPPdDtuysvv40yFFm0MBsvQuwfpM358qw2daAYVgJFJEGz70BqMLWvGvCk2qvrNP2jp+BM1RWELRUCfhEeGGLoIjpKV7bg4XGdZERNYlYpDMHFx6SvpGaaafSn2s8rnYrdVAd0alFZbhbR+zE3fAtcRACKu1khapda8VlZ7hDFOeJd27B1rq6abyOim2MPSwgD6BuRkiciKd6DUGSdjBwRddA5Lv/ZEce5Xzfxe92lDDVQ4ewOETbpNsz9SdszkxrafS/uBkmFOhDN3XhJQ== 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: From: "andrew.yang" damon_get_folio() would always increase folio _refcount and folio_isolate_lru() would increase folio _refcount if the folio's lru flag is set. If an unevictable folio isolated successfully, there will be two more _refcount. The one from folio_isolate_lru() will be decreased in folio_puback_lru(), but the other one from damon_get_folio() will be left behind. This causes a pin page. Whatever the case, the _refcount from damon_get_folio() should be decreased. Signed-off-by: andrew.yang --- v2: according to David's suggestion 1. revise subject according to SeongJae's suggestions 1. rebase to mm-unstable tree 2. remove braces for th single statements --- mm/damon/paddr.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/mm/damon/paddr.c b/mm/damon/paddr.c index 607bb69e526c..6c655d9b5639 100644 --- a/mm/damon/paddr.c +++ b/mm/damon/paddr.c @@ -250,12 +250,11 @@ static unsigned long damon_pa_pageout(struct damon_region *r, struct damos *s) folio_put(folio); continue; } - if (folio_test_unevictable(folio)) { + if (folio_test_unevictable(folio)) folio_putback_lru(folio); - } else { + else list_add(&folio->lru, &folio_list); - folio_put(folio); - } + folio_put(folio); } applied = reclaim_pages(&folio_list); cond_resched(); -- 2.18.0