From: "Huang, Ying" <ying.huang@intel.com>
To: Miaohe Lin <linmiaohe@huawei.com>, Joonsoo Kim <iamjoonsoo.kim@lge.com>
Cc: <akpm@linux-foundation.org>, <linux-mm@kvack.org>,
<linux-kernel@vger.kernel.org>,
Konstantin Khlebnikov <khlebnikov@openvz.org>,
Wu Fengguang <wfg@mail.ustc.edu.cn>
Subject: Re: [PATCH 5/8] mm/vmscan: use helper folio_is_file_lru()
Date: Fri, 01 Apr 2022 14:40:36 +0800 [thread overview]
Message-ID: <87tubd9uhn.fsf@yhuang6-desk2.ccr.corp.intel.com> (raw)
In-Reply-To: <191fa86c-2548-d136-19f5-3e0a744b6da9@huawei.com> (Miaohe Lin's message of "Fri, 1 Apr 2022 14:14:49 +0800")
Miaohe Lin <linmiaohe@huawei.com> writes:
> On 2022/4/1 11:20, Huang, Ying wrote:
>> Miaohe Lin <linmiaohe@huawei.com> writes:
>>
>>> Use helper folio_is_file_lru() to check whether folio is file lru. Minor
>>> readability improvement.
>>>
>>> Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
>>> ---
>>> mm/vmscan.c | 4 ++--
>>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/mm/vmscan.c b/mm/vmscan.c
>>> index ebd8ffb63673..31e95d627448 100644
>>> --- a/mm/vmscan.c
>>> +++ b/mm/vmscan.c
>>> @@ -1411,14 +1411,14 @@ static enum page_references folio_check_references(struct folio *folio,
>>> /*
>>> * Activate file-backed executable folios after first usage.
>>> */
>>> - if ((vm_flags & VM_EXEC) && !folio_test_swapbacked(folio))
>>> + if ((vm_flags & VM_EXEC) && folio_is_file_lru(folio))
>>
>> I think that this should be converted to
>>
>> if ((vm_flags & VM_EXEC)))
>>
>> We should activate swap-backed executable folios (e.g. tmpfs) after
>> first usage too.
>>
>
> Dig into the git history, we can found that commit c909e99364c8 ("vmscan: activate executable pages after first usage")
> activate swap-backed executable folios after first usage too. But later swap-backed executable folios is not activated
> via commit b518154e59aa ("mm/vmscan: protect the workingset on anonymous LRU") to pretect the workingset from anonymous
> LRU. So above change might not be wanted. Or am I miss something?
I think we should restore the original behavior to protect swap backed
executable folios too.
Hi, Kim,
What do you think about this?
Best Regards,
Huang, Ying
> Many thanks.
>
>> Best Regards,
>> Huang, Ying
>>
>>> return PAGEREF_ACTIVATE;
>>>
>>> return PAGEREF_KEEP;
>>> }
>>>
>>> /* Reclaim if clean, defer dirty folios to writeback */
>>> - if (referenced_folio && !folio_test_swapbacked(folio))
>>> + if (referenced_folio && folio_is_file_lru(folio))
>>> return PAGEREF_RECLAIM_CLEAN;
>>>
>>> return PAGEREF_RECLAIM;
>> .
>>
next prev parent reply other threads:[~2022-04-01 6:41 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
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 [this message]
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=87tubd9uhn.fsf@yhuang6-desk2.ccr.corp.intel.com \
--to=ying.huang@intel.com \
--cc=akpm@linux-foundation.org \
--cc=iamjoonsoo.kim@lge.com \
--cc=khlebnikov@openvz.org \
--cc=linmiaohe@huawei.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=wfg@mail.ustc.edu.cn \
/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