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 80734C54E67 for ; Wed, 27 Mar 2024 18:50:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1B2276B0089; Wed, 27 Mar 2024 14:50:02 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 162906B008A; Wed, 27 Mar 2024 14:50:02 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 029E86B008C; Wed, 27 Mar 2024 14:50:01 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id D93356B0089 for ; Wed, 27 Mar 2024 14:50:01 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 6D7731C094C for ; Wed, 27 Mar 2024 18:50:01 +0000 (UTC) X-FDA: 81943708602.24.1272839 Received: from mail-pg1-f178.google.com (mail-pg1-f178.google.com [209.85.215.178]) by imf10.hostedemail.com (Postfix) with ESMTP id 8D4DAC0002 for ; Wed, 27 Mar 2024 18:49:59 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=NZtRc85F; spf=pass (imf10.hostedemail.com: domain of vishal.moola@gmail.com designates 209.85.215.178 as permitted sender) smtp.mailfrom=vishal.moola@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711565399; 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:in-reply-to:references:references:dkim-signature; bh=h5t/AmTRdXvWmy+O2VC1lIN3rPn/dmvYiRzipUa/pgM=; b=xvWW24yDUTq0Yq2daZBUMupBP4vaZJUESZ5SiYP6mraCr2cLMgMYiBtF/lmoNZ4nBg+3rK NUAxAjrh2HUdTWUFstnMZAaji91hRaLBOyfsoE4agW/wwwvYoio1cFCzUtGKamiEad2yOG 6W6/b5SezdP6vjb6dcXzggQ4VkimRdM= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711565399; a=rsa-sha256; cv=none; b=KN5tUMRO9HIC0x0kvArxpAPBdvK0ZvwBYUir40QkcQCCpzgsoKoVLjYcDBYOrWsPKAyydc NCgsSD/iBpVxOUVogBtsnObN4++DUDS8spxGyR2y1rT0TwPr78mT7NjlgsdKOxRBaYJJ1+ 5FwBeb70E3qXHOG0+Q8MbeEcI8ljTCQ= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=NZtRc85F; spf=pass (imf10.hostedemail.com: domain of vishal.moola@gmail.com designates 209.85.215.178 as permitted sender) smtp.mailfrom=vishal.moola@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-pg1-f178.google.com with SMTP id 41be03b00d2f7-5d8b519e438so51212a12.1 for ; Wed, 27 Mar 2024 11:49:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1711565398; x=1712170198; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=h5t/AmTRdXvWmy+O2VC1lIN3rPn/dmvYiRzipUa/pgM=; b=NZtRc85F4S1gwV+y9XnHurlpYJO5y+wE8nl47NMEjczaE0ZGVD46JjbG7arZVpPIHA 1SaRi4Ocq4bHefM970vw9Lnf99ZcIKqsGjEkfeIDzKTVk5Wa8f0jN3wb4YI1jmKiA1Av OB2EFUnIIpOtVmZy0KqUEIuF3/2EGvxh+e1MN0bFC0Kk2WeaJhWl8+10+6ePlyFgbXFG jMD36F0hZDHvHiXugJ8+uK6zuJRYzbetQd4wFSfxCRqY7XaKdPPD47N6Q86BsrN6pCOJ nf8yecjWXUJNHEHipZ/3f+0bEPR3aGjc/PVsaODEwTjB+NOODcqmRWVZgPzUf0ZFCx8s T/lQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711565398; x=1712170198; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=h5t/AmTRdXvWmy+O2VC1lIN3rPn/dmvYiRzipUa/pgM=; b=djtbCJb0YWjvCKnBzHnaPt2I2wx0JeHj7kfyNCh1GcmOE65FpOTC6lqpmxrJwVMMnP RnLGP8kDPv9RKtu9lLiSvshLnERYr+0icbd/TnKCbCG7nGXmuUXn5fX5GClG5/TP7Rgo rhX9NMYxx9764VCeHm4CLerCWO4WmnPuBrBmm12K8/Nc/EAJmsmSOObcQZPkqsKFGk7p UV9s2BTlcFZrn0QyG7Psg2bDiV8Sie2XEcpQR2xNBr3jYhx73ZP6xfXHT9aSbzucumZw NtQmyI3eAVdn7w5rE83Z5qWre7aAuckUdF1FYT5ovuOaA4+rgubz8QJIvWaYFDnUbyLf 1k3A== X-Forwarded-Encrypted: i=1; AJvYcCWN4c68SwcFbMdtdt8w3YP1ew78Dr/Pdlrle9g08VmTI8HytAVR+aX5moA6o0rDnoPd/wXw33OPsai2p3aqO6Rhl68= X-Gm-Message-State: AOJu0YyDbIQflsMyhf+JUAGGzBBVQUcyNev3umZUINKRHaaUe4m4L/Aa 02GquJSKXu/hRyy0CmbvphjpGUqqvpvdrFPZSMm/Wqn4Se6uxvTn X-Google-Smtp-Source: AGHT+IH+0CgiGwGItqTd6o2x/EYRf2Sxp2VpbmlzyQceVg/Y1UGKcCUWhUXijSSiGBomRVH/ZkKsJA== X-Received: by 2002:a05:6a20:8f05:b0:1a3:c266:e7bd with SMTP id b5-20020a056a208f0500b001a3c266e7bdmr875064pzk.38.1711565398292; Wed, 27 Mar 2024 11:49:58 -0700 (PDT) Received: from fedora (c-73-170-51-167.hsd1.ca.comcast.net. [73.170.51.167]) by smtp.gmail.com with ESMTPSA id d13-20020a62f80d000000b006e5a915a9e7sm8387554pfh.10.2024.03.27.11.49.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 27 Mar 2024 11:49:57 -0700 (PDT) Date: Wed, 27 Mar 2024 11:49:55 -0700 From: Vishal Moola To: Kefeng Wang Cc: Andrew Morton , willy@infradead.org, Miaohe Lin , Naoya Horiguchi , David Hildenbrand , Oscar Salvador , Zi Yan , Hugh Dickins , Jonathan Corbet , linux-mm@kvack.org, linux-doc@vger.kernel.org, Baolin Wang Subject: Re: [PATCH 4/6] mm: compaction: use isolate_movable_folio() in isolate_migratepages_block() Message-ID: References: <20240327141034.3712697-1-wangkefeng.wang@huawei.com> <20240327141034.3712697-5-wangkefeng.wang@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240327141034.3712697-5-wangkefeng.wang@huawei.com> X-Rspamd-Queue-Id: 8D4DAC0002 X-Rspam-User: X-Stat-Signature: akqp7qcci5d48od58hneqfqxk5x4ukf9 X-Rspamd-Server: rspam03 X-HE-Tag: 1711565399-783983 X-HE-Meta: U2FsdGVkX1/deQXXpodj8MJfbVNhEFRcV2Ju2rkQJeqThC4vXp8CKGdxTQhj84Sp+wcSa09jj8h7EyQakokOiX4HDPuR9SB2Z1Tv0vrY54IekAHbNQIj3Vi8kscecoQtjBQcKGh76navG8/E3+PpzgoyhDjF5jYrl/fsZj4DqM1Buf74MeBhWTk6Lk8TB67mqii/iX8gvjgq7m0fH3UGo711NSLKAgZ1d8Ko6HwfPMdtGrntkFVHhSIuU5IKNmZQdSjdPH2h8JbEJcdXhJEEIfZ9FdmOmWYmc3GMIDF64P65aGpq2o2KH/YEOlCax3aRtR2/MXV7cwqe2f1fcLIKskwQkclEptSMfjfeCcXUlqsc+k8lP0YUOevuI3EtRSvNNQzIXWWJpTS/TzjzXHZ9MO8dNEUDb81F30KYARbVCO7TXdcrZHbRMqwaWU5YbDk7fBd7XOrKKaYTUHGF92hlIA2aoBBdKMNvqNIdvZY3H1BPrc91rpE0L5DkLVVVvzz+yDq/vbvOvPOTPtGcDEShWCHkvLlHZzCZhNXplsNatUXyzK9fzyogdF0qbsuVI4L8rA4SFpzezqdWXyVMFus7M+HJhDL/UVGqFL2nHUXZF0iZAzWLd/uA1zISgdZvFY6l/AzGN+2Pqbz4V1OA3EAOZEon7DAW3U9nPiGi7fH6sowvsBVC2/XtVZhTPZvf7JJe2vGem5DMEb0YnrEIXIYHKgdsj8kDNavyCfGDrmL8AdFcQsNPxlC38/qEtPYzC/0DevWPdSOWKDxyCkeEEtO4a5wvjaXcvLJ8a0CHVNGCJI75oJCHlGjuNZhnRLBokqTD2ud1403x5NlkjPyMDbBd693YjiZ31vfj5i1tXk0XjvvMW5ZcOEhWj1GX1SK9sFMLArz99bFXPN9WJ4M9e7iihoUw3q/QG52/6wGm41rqWV41th4GI7iuNFXNEmJaIKyxw0aHzQcOAZUm5pUGpOM 7hSrC2Gq WJXJf6+lgch8vbBXIMLcl/8lsx8eFxtae1CQ9XKMqKVSWgYtCVOHPnhAnldgUUwVegwI7P+pdkuGV7/c30YxdZCvemg/qlhoPHbsDFoh0/OAVs3gplCCn1ZMekhY6vUiFQTC5D893NJV98XVE/SVEs+EgWpXjzQxOnJb3h7Tmo1MsV4wMlv6vbRJAOQwXIhnbVaeQXwuU9e7hyGnreaulOKdo9h3DilVeuRiS6xsnZQzOlW//bCdQhs7hdoIVASjrVIXTOT3XITMxAMWwAESe3bGZRbjTqDNZN81h0/laPS8TsBVBxipsmIu0NwR7/+BRkxqqlXkPVK0Sn/ZM4GwG/XnCqniYnkyULw+sJNW4ENMP/5q8UADtwMF76LdOcu+/oQqy8f/l3hHCgHbvC4a9A0l2+RaEhmYcrx0kJwEFgDVTU6Mta1mP0LsloYiUjsGMkBWF6y29RIlQIiiM5Wmgpi1tX6zwWXoMoYMvlrCnq/SMYfmAJdt8GmG6u78XTKufHSjmIAsumhdzDPvf9BG7IWg0PlUiqbsZ1qCP 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: List-Subscribe: List-Unsubscribe: On Wed, Mar 27, 2024 at 10:10:32PM +0800, Kefeng Wang wrote: > This moves folio_get_nontail_page() before non-lru movable pages check, > and directly call isolate_movable_folio() to save compound_head() calls, > since the reference count of the non-lru movable page is increased, a > folio_put() is need() whether the folio is isolated or not. > > Signed-off-by: Kefeng Wang > --- > mm/compaction.c | 30 +++++++++++++++--------------- > 1 file changed, 15 insertions(+), 15 deletions(-) > > diff --git a/mm/compaction.c b/mm/compaction.c > index 807b58e6eb68..74ac65daaed1 100644 > --- a/mm/compaction.c > +++ b/mm/compaction.c > @@ -1097,41 +1097,41 @@ isolate_migratepages_block(struct compact_control *cc, unsigned long low_pfn, > } > } > > + /* > + * Be careful not to clear PageLRU until after we're > + * sure the page is not being freed elsewhere -- the > + * page release code relies on it. > + */ > + folio = folio_get_nontail_page(page); > + if (unlikely(!folio)) > + goto isolate_fail; > + If you wanted to move this, I think this should be part of your first patch (or prior to it). It would make your first patch be more sensible as is. You could then also consider making isolate_movable_folio() more similar to folio_isolate_lru() if you really wanted to. > /* > * Check may be lockless but that's ok as we recheck later. > * It's possible to migrate LRU and non-lru movable pages. > * Skip any other type of page > */ > - if (!PageLRU(page)) { > + if (!folio_test_lru(folio)) { > /* > * __PageMovable can return false positive so we need > * to verify it under page_lock. > */ > - if (unlikely(__PageMovable(page)) && > - !PageIsolated(page)) { > + if (unlikely(__folio_test_movable(folio)) && > + !folio_test_isolated(folio)) { > if (locked) { > unlock_page_lruvec_irqrestore(locked, flags); > locked = NULL; > } > > - if (isolate_movable_page(page, mode)) { > - folio = page_folio(page); > + if (isolate_movable_folio(folio, mode)) { > + folio_put(folio); > goto isolate_success; > } > } > > - goto isolate_fail; > + goto isolate_fail_put; > } > > - /* > - * Be careful not to clear PageLRU until after we're > - * sure the page is not being freed elsewhere -- the > - * page release code relies on it. > - */ > - folio = folio_get_nontail_page(page); > - if (unlikely(!folio)) > - goto isolate_fail; > - > /* > * Migration will fail if an anonymous page is pinned in memory, > * so avoid taking lru_lock and isolating it unnecessarily in an > -- > 2.27.0 > >