From: "Huang, Ying" <ying.huang@intel.com>
To: Muchun Song <songmuchun@bytedance.com>
Cc: Miaohe Lin <linmiaohe@huawei.com>,
Andrew Morton <akpm@linux-foundation.org>,
Linux Memory Management List <linux-mm@kvack.org>,
LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 1/8] mm/vmscan: remove redundant folio_test_swapbacked check when folio is file lru
Date: Thu, 31 Mar 2022 14:37:46 +0800 [thread overview]
Message-ID: <87lewqbpad.fsf@yhuang6-desk2.ccr.corp.intel.com> (raw)
In-Reply-To: <CAMZfGtUPQvgaxG_6A0n6HwD9VjqbQUbnF99Ei9WpMZbTbnz4zg@mail.gmail.com> (Muchun Song's message of "Wed, 30 Mar 2022 16:13:06 +0800")
Muchun Song <songmuchun@bytedance.com> writes:
> On Tue, Mar 29, 2022 at 9:26 PM Miaohe Lin <linmiaohe@huawei.com> wrote:
>>
>> When folio is file lru, folio_test_swapbacked is guaranteed to be true. So
>> it's unnecessary to check it here again. No functional change intended.
>>
>> Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
>> ---
>> mm/vmscan.c | 3 +--
>> 1 file changed, 1 insertion(+), 2 deletions(-)
>>
>> diff --git a/mm/vmscan.c b/mm/vmscan.c
>> index 1678802e03e7..7c1a9713bfc9 100644
>> --- a/mm/vmscan.c
>> +++ b/mm/vmscan.c
>> @@ -1434,8 +1434,7 @@ static void folio_check_dirty_writeback(struct folio *folio,
>> * Anonymous pages are not handled by flushers and must be written
>> * from reclaim context. Do not stall reclaim based on them
>> */
>> - if (!folio_is_file_lru(folio) ||
>> - (folio_test_anon(folio) && !folio_test_swapbacked(folio))) {
>> + if (!folio_is_file_lru(folio) || folio_test_anon(folio)) {
>
> At least your login is no problem since folio_is_file_lru() is equal to
> !folio_test_swapbacked(). But the new code is not clear to me.
> The old code is easy to understand, e.g. folio_test_anon(folio) &&
> !folio_test_swapbacked(folio) tells us that the anon pages which
> do not need to be swapped should be skipped.
That is for MADV_FREE pages. The code is introduced in commit
802a3a92ad7a ("mm: reclaim MADV_FREE pages").
So I think the original code is better. It's an implementation detail
that folio_is_file_lru() equals !folio_test_swapbacked(). It may be
better to add some comments here for MADV_FREE pages.
> So I'm neutral on the patch.
Best Regards,
Huang, Ying
next prev parent reply other threads:[~2022-03-31 6:37 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-29 13:26 [PATCH 0/8] A few cleanup and fixup patches for migration Miaohe Lin
2022-03-29 13:26 ` [PATCH 1/8] mm/vmscan: remove redundant folio_test_swapbacked check when folio is file lru Miaohe Lin
2022-03-29 13:46 ` Matthew Wilcox
2022-03-30 1:46 ` Miaohe Lin
2022-03-30 8:13 ` Muchun Song
2022-03-30 9:26 ` Miaohe Lin
2022-03-31 6:37 ` Huang, Ying [this message]
2022-03-31 7:44 ` Miaohe Lin
2022-03-31 8:02 ` Huang, Ying
2022-03-31 8:07 ` Miaohe Lin
2022-03-29 13:26 ` [PATCH 2/8] mm/vmscan: remove unneeded can_split_huge_page check Miaohe Lin
2022-03-31 8:38 ` Huang, Ying
2022-03-31 10:47 ` Miaohe Lin
2022-03-29 13:26 ` [PATCH 3/8] mm/vmscan: introduce helper function reclaim_page_list() Miaohe Lin
2022-03-29 13:50 ` Matthew Wilcox
2022-03-30 2:04 ` Miaohe Lin
2022-03-30 16:23 ` Matthew Wilcox
2022-03-31 1:45 ` Miaohe Lin
2022-03-29 14:00 ` Christoph Hellwig
2022-03-30 2:02 ` Miaohe Lin
2022-03-29 13:26 ` [PATCH 4/8] mm/vmscan: save a bit of stack space in shrink_lruvec Miaohe Lin
2022-03-29 14:00 ` Christoph Hellwig
2022-03-30 1:59 ` Miaohe Lin
2022-03-29 13:26 ` [PATCH 5/8] mm/vmscan: use helper folio_is_file_lru() Miaohe Lin
2022-04-01 3:20 ` Huang, Ying
2022-04-01 6:14 ` Miaohe Lin
2022-04-01 6:40 ` Huang, Ying
2022-03-29 13:26 ` [PATCH 6/8] mm/vmscan: take all base pages of THP into account when race with speculative reference Miaohe Lin
2022-03-29 13:26 ` [PATCH 7/8] mm/vmscan: take min_slab_pages into account when try to call shrink_node Miaohe Lin
2022-03-29 13:26 ` [PATCH 8/8] mm/vmscan: remove obsolete comment in kswapd_run Miaohe Lin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87lewqbpad.fsf@yhuang6-desk2.ccr.corp.intel.com \
--to=ying.huang@intel.com \
--cc=akpm@linux-foundation.org \
--cc=linmiaohe@huawei.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=songmuchun@bytedance.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox