From: Zhaoyang Huang <huangzhaoyang@gmail.com>
To: "zhaoyang.huang" <zhaoyang.huang@unisoc.com>
Cc: Mel Gorman <mgorman@techsingularity.net>,
Andrew Morton <akpm@linux-foundation.org>,
"open list:MEMORY MANAGEMENT" <linux-mm@kvack.org>,
LKML <linux-kernel@vger.kernel.org>,
Ke Wang <ke.wang@unisoc.com>
Subject: Re: [PATCH] mm: check high-order page when free it to pcp
Date: Mon, 19 Sep 2022 13:37:40 +0800 [thread overview]
Message-ID: <CAGWkznHPBTChePBRZ-kf8Db88Hm9SCNZfV_BeOU-Q7NtUgrFpQ@mail.gmail.com> (raw)
In-Reply-To: <1663559238-22918-1-git-send-email-zhaoyang.huang@unisoc.com>
current free_pcp_prepare logic should be inherited from the code
before 44042b4498, where high order pages only reside in the global
list and will be checked during free and alloc.
On Mon, Sep 19, 2022 at 11:47 AM zhaoyang.huang
<zhaoyang.huang@unisoc.com> wrote:
>
> From: Zhaoyang Huang <zhaoyang.huang@unisoc.com>
>
> High-order pcp page escaped from checking when both of DEBUG_VM and debug_pagealloc
> are all disabled if it allocated again from pcp_list without going to global
> free list, which should be introduced by 44042b4498.
>
> fix:44042b4498
>
> Signed-off-by: Zhaoyang Huang <zhaoyang.huang@unisoc.com>
> ---
> mm/page_alloc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index e008a3d..e77f3a7 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -1437,7 +1437,7 @@ static bool bulkfree_pcp_prepare(struct page *page)
> */
> static bool free_pcp_prepare(struct page *page, unsigned int order)
> {
> - if (debug_pagealloc_enabled_static())
> + if (debug_pagealloc_enabled_static() || order)
> return free_pages_prepare(page, order, true, FPI_NONE);
> else
> return free_pages_prepare(page, order, false, FPI_NONE);
> --
> 1.9.1
>
next prev parent reply other threads:[~2022-09-19 5:38 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-19 3:47 zhaoyang.huang
2022-09-19 5:37 ` Zhaoyang Huang [this message]
2022-09-19 10:42 ` Mel Gorman
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=CAGWkznHPBTChePBRZ-kf8Db88Hm9SCNZfV_BeOU-Q7NtUgrFpQ@mail.gmail.com \
--to=huangzhaoyang@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=ke.wang@unisoc.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mgorman@techsingularity.net \
--cc=zhaoyang.huang@unisoc.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