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 C5FA7C3DA79 for ; Mon, 15 Jan 2024 08:48:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EC9966B0074; Mon, 15 Jan 2024 03:48:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E79186B0078; Mon, 15 Jan 2024 03:48:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D1B606B0085; Mon, 15 Jan 2024 03:48:34 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id BF8CC6B0074 for ; Mon, 15 Jan 2024 03:48:34 -0500 (EST) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 8F1DB1207FE for ; Mon, 15 Jan 2024 08:48:34 +0000 (UTC) X-FDA: 81680919348.26.EE423DF Received: from invmail4.hynix.com (exvmail4.skhynix.com [166.125.252.92]) by imf03.hostedemail.com (Postfix) with ESMTP id ED23F20009 for ; Mon, 15 Jan 2024 08:48:31 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf03.hostedemail.com: domain of byungchul@sk.com designates 166.125.252.92 as permitted sender) smtp.mailfrom=byungchul@sk.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1705308512; 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; bh=OK5RPdEJam8vmvoTngF6GKblarmkfeKuX/seAdwKmhU=; b=odE5SfVpxp3y0BZWJRGGMpnd1NHpIj/hfkm7tThNCXIXYRyB+mGAVLi6f85bVRykxMkBLV hNYPb6QfZ45HfPeUxZZ+EYW8bPwFWcV/HcK7GgtRxbgIRsuKPhKQuF0TMNwbwXq3+OPJqP Wuf9WpNW5xaynpCXLXTMnmYKrbbzhUk= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf03.hostedemail.com: domain of byungchul@sk.com designates 166.125.252.92 as permitted sender) smtp.mailfrom=byungchul@sk.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1705308512; a=rsa-sha256; cv=none; b=KxaB5xPt1Kvso3MaJcf69P3hKuiLHS08P6qMdz4NKPtdNeNbGlopP7QYrujEPicxiFyN91 XR4+UM0ka4NJQu0FK9mqLHJe8BOcpNUuXikiFQC9x7irrzgMEE9RXjPHFRCSKX646MJ+dX DIGtnz4IVBXUNWONtrI0ZzSIgir694c= X-AuditID: a67dfc5b-d85ff70000001748-f9-65a4f15eecc3 Date: Mon, 15 Jan 2024 17:48:25 +0900 From: Byungchul Park To: Matthew Wilcox Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, kernel_team@skhynix.com, akpm@linux-foundation.org, ying.huang@intel.com, namit@vmware.com, xhao@linux.alibaba.com, mgorman@techsingularity.net, hughd@google.com, david@redhat.com, peterz@infradead.org, luto@kernel.org, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com Subject: Re: [v5 4/7] mm: Separate move/undo doing on folio list from migrate_pages_batch() Message-ID: <20240115084825.GA18164@system.software.com> References: <20240111060757.13563-1-byungchul@sk.com> <20240111060757.13563-5-byungchul@sk.com> <20240115020817.GA56966@system.software.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240115020817.GA56966@system.software.com> User-Agent: Mutt/1.9.4 (2018-02-28) X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrFIsWRmVeSWpSXmKPExsXC9ZZnoW7cxyWpBuc75C3mrF/DZvF5wz82 ixcb2hktvq7/xWzx9FMfi8XlXXPYLO6t+c9qcX7XWlaLHUv3MVlcOrCAyeL6roeMFsd7DzBZ bN40ldni9w+gujlTrCxOzprM4iDg8b21j8VjwaZSj80rtDwW73nJ5LFpVSebx6ZPk9g93p07 x+5xYsZvFo+dDy095p0M9Hi/7yqbx9Zfdh6fN8l5vJv/li2AL4rLJiU1J7MstUjfLoEro3tW J3vBVZ6KjXMPMjUwvuHsYuTkkBAwkbh/pI21i5EDzP4yWxgkzCKgKrFhcRMbiM0moC5x48ZP ZpASEQENiTdbjLoYuTiYBV4zSTz7v48JpEZYIFbi4+mNLCA2r4CFxJxvFxlBioQEdjFK9PX9 YINICEqcnPkErIhZQEvixr+XTCBDmQWkJZb/4wAJcwpYSnQteQhWLiqgLHFg23EmkDkSAuvY JU5MPsYOcbOkxMEVN1gmMArMQjJ2FpKxsxDGLmBkXsUolJlXlpuYmWOil1GZl1mhl5yfu4kR GIPLav9E72D8dCH4EKMAB6MSD++Pv4tThVgTy4orcw8xSnAwK4nwVt9ZkirEm5JYWZValB9f VJqTWnyIUZqDRUmc1+hbeYqQQHpiSWp2ampBahFMlomDU6qBMfWRQt2dztX7tqqLcnPeOd45 /dbaiCdrpwl+qvv6h1G8yVfpgpZrzb5Jt7kTuBqPO7G52fzLLDD61ppow8rZLiJWPq9rI4eT 2NZrKhfeZN88N/mqsEXT5WTF55rRzOe3+As/WKt22rszY/2mGbO9ClZ+1r22VYYhMXey/IUp y+IvOVT+czu/V4mlOCPRUIu5qDgRAI+iZTu9AgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprIIsWRmVeSWpSXmKPExsXC5WfdrBv3cUmqwd57vBZz1q9hs/i84R+b xYsN7YwWX9f/YrZ4+qmPxeLw3JOsFpd3zWGzuLfmP6vF+V1rWS12LN3HZHHpwAImi+u7HjJa HO89wGSxedNUZovfP4Dq5kyxsjg5azKLg6DH99Y+Fo8Fm0o9Nq/Q8li85yWTx6ZVnWwemz5N Yvd4d+4cu8eJGb9ZPHY+tPSYdzLQ4/2+q2wei198YPLY+svO4/MmOY9389+yBfBHcdmkpOZk lqUW6dslcGV0z+pkL7jKU7Fx7kGmBsY3nF2MHBwSAiYSX2YLdzFycrAIqEpsWNzEBmKzCahL 3LjxkxmkRERAQ+LNFqMuRi4OZoHXTBLP/u9jAqkRFoiV+Hh6IwuIzStgITHn20VGkCIhgV2M En19P9ggEoISJ2c+AStiFtCSuPHvJRPIUGYBaYnl/zhAwpwClhJdSx6ClYsKKEsc2HacaQIj 7ywk3bOQdM9C6F7AyLyKUSQzryw3MTPHVK84O6MyL7NCLzk/dxMjMKKW1f6ZuIPxy2X3Q4wC HIxKPLw//i5OFWJNLCuuzD3EKMHBrCTCW31nSaoQb0piZVVqUX58UWlOavEhRmkOFiVxXq/w 1AQhgfTEktTs1NSC1CKYLBMHp1QD45S1TbO4Mv0y9tQWCbEVlm29Iul6QuHjCofPgqum2GT0 hJY/TFz1slKw23Uj47+HZwpVosQqJA8lbNIt1bAp8gusWvHQzkXsb73t8gS+B6rP9R9UBUvv PTF1fXFceZ7XweylE6b5PnJ6uX1e9nID/fxNYaIbjv23z/T8mfY0vH5PhVFnqF61EktxRqKh FnNRcSIA72GZCKQCAAA= X-CFilter-Loop: Reflected X-Rspamd-Queue-Id: ED23F20009 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: qxbps8p15g6a598f4y484boozjawt5ej X-HE-Tag: 1705308511-43298 X-HE-Meta: U2FsdGVkX18OQafina8v69joZxV+FvOklAP9jYfVgDLCUnUhBFXjzIyOH51B2dq8m7jktkPVPBX2CYHXmuFMlo9ssu+thjj5tBiomWNkA82YJsYs1LGdFk09Xez0ucdO6BwqoV4DR3rHAc+WCPkn6JGI1VMAfk23vDqLTS/NYazKA/QdtvUyVzHQWgrpU62JBUotwtGEKEWDOHOlHDDxTtFTOFgIZPi7i/Gz+MxuTgU+bz9WPUZ99eo6v4EXtn75jJOaBo8otj4VzmB6zsMZlZ/NQefRarcUxpHy54LLHoKWbe//zNtmdeocwJT7rJ9mpUp0QTehQbQVZBJpjwAMSM3hHeVdsmH6ThSHh4TPUgW1mynkNqhadpPmkdLb9wo/b8CorupcajxmOZHfL224ATLskClX5LPimNt39IGrW5wjwde8NkR8szETZgEyD61cpe1T0zos+ZL/T6cydo8gsb0JwvzTCHX2t0rBzMaeqDGMQrUNekGNXvjOit+QNRb5h0Co1VCDpEcq9qravQRP/UeMQKKN6EiqGBpOv57p+q/vxHhei+2VxSOw07NgrIyFnWsTQs8fjg3HTKv+TFgKaahE0oCAQITww7Lx8Mq99XvlNV6NOEByKUpJw0XEwD93KQejXt1J0GItAJRKVeJ4orUiNCzKlhz8OnMk1rs2nITyVwWdli1Y7sEWyHvOx/V2ANyQsW4sFE62jPChm8JLsNsIMiwatgD+LQtr/MInc3CbRpq0vINfx9WbpOiQWWYH4ggWnMEYEPPfPMI5mHAwjiDw+0gWkSPweGud4pf37xCTI6pbKWOr7d0DhR4h7pj8/ymQbquQtAjUkJX1iWXPRDCMPHyyvlD5MflStZH4GUlVn81NFE1Z/uJQDesyOJrp7Ag0CJlvEVBbTuupxrFb2WLjkWrH3YUpO9Aj77y5hCFQvp83adfvfNO5MieXCWx4fgfYva7R6JHLJm2ZMmD Q/A== 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 Mon, Jan 15, 2024 at 11:08:18AM +0900, Byungchul Park wrote: > On Thu, Jan 11, 2024 at 03:42:55PM +0000, Matthew Wilcox wrote: > > On Thu, Jan 11, 2024 at 03:07:54PM +0900, Byungchul Park wrote: > > > +static void migrate_folios_move(struct list_head *src_folios, > > > + struct list_head *dst_folios, > > > + free_folio_t put_new_folio, unsigned long private, > > > + enum migrate_mode mode, int reason, > > > + struct list_head *ret_folios, > > > + struct migrate_pages_stats *stats, > > > + int *retry, int *thp_retry, int *nr_failed, > > > + int *nr_retry_pages) > > > +{ > > > + struct folio *folio, *folio2, *dst, *dst2; > > > + bool is_thp; > > > + int nr_pages; > > > + int rc; > > > + > > > + dst = list_first_entry(dst_folios, struct folio, lru); > > > + dst2 = list_next_entry(dst, lru); > > > + list_for_each_entry_safe(folio, folio2, src_folios, lru) { > > > + is_thp = folio_test_large(folio) && folio_test_pmd_mappable(folio); JFYI, in the v4 patch set, I hadn't changed the original code that I refactored. I just copied and pasted this part from the original code. > > > > You don't need to call folio_test_large() first. folio_order() includes > > a call to test_large() so it can return 0. > > > > > + nr_pages = folio_nr_pages(folio); > > > > ... or since you're calculating this anyway, > > > > is_thp = nr_pages >= HPAGE_PMD_NR I didn't apply what you suggested me here to the next version yet because I was not sure if it'd make the code more readable. Thanks anyway! Byungchul > Cool. Thanks. > > Byungchul > > > perhaps