Re: [PATCH v2 02/10] mm, compaction: remove redundant watermark check in compact_finished()

Johannes Weiner
2017-02-14T16:35:19Z

On Fri, Feb 10, 2017 at 06:23:35PM +0100, Vlastimil Babka wrote:
> When detecting whether compaction has succeeded in forming a high-order page,
> __compact_finished() employs a watermark check, followed by an own search for
> a suitable page in the freelists. This is not ideal for two reasons:
>
> - The watermark check also searches high-order freelists, but has a less strict
> criteria wrt fallback. It's therefore redundant and waste of cycles. This was
> different in the past when high-order watermark check attempted to apply
> reserves to high-order pages.
>
> - The watermark check might actually fail due to lack of order-0 pages.
> Compaction can't help with that, so there's no point in continuing because of
> that. It's possible that high-order page still exists and it terminates.
>
> This patch therefore removes the watermark check. This should save some cycles
> and terminate compaction sooner in some cases.
>
> Signed-off-by: Vlastimil Babka <vbabka@suse.cz>

Acked-by: Johannes Weiner <hannes@cmpxchg.org>