[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAOptpSPoc76ZSzbKJSnnfxtcDubJHC8a1zU7b=C=wdF6_wC3ww@mail.gmail.com>
Date: Fri, 25 Apr 2025 22:28:42 +0800
From: Wenchao Hao <haowenchao22@...il.com>
To: Johannes Weiner <hannes@...xchg.org>
Cc: Andrew Morton <akpm@...ux-foundation.org>, linux-mm@...ck.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] mm/compaction: do not break pages whose order is larger
than target order
On Fri, Apr 25, 2025 at 3:42 AM Johannes Weiner <hannes@...xchg.org> wrote:
>
> On Thu, Apr 24, 2025 at 11:38:15PM +0800, Wenchao Hao wrote:
> > When scanning free pages for memory compaction, if the compaction target
> > order is explicitly specified, do not split pages in buddy whose order
> > are larger than compaction target order.
>
> Have you observed this to be an issue in practice?
>
> compact_finished() would have bailed if such a page had existed.
>
Yes, when proactive memory compaction is enabled, there may be situations
where the order of isolated free pages is greater than the compaction
requested order, and compact_finished() will return continue.
> compaction_capture() would steal such a page upon production.
>
> It could help with blocks freed by chance from somewhere else, where
> you'd preserve it to grab it later from the allocation retry. But if
> that's the target, it might be better to indeed isolate the page, and
> then capture it inside compaction_alloc()?
Powered by blists - more mailing lists