Re: [patch 1/2] mm, compaction: kcompactd should not ignore pageblock skip

From: David Rientjes
Date: Mon Sep 11 2017 - 17:13:42 EST


On Mon, 11 Sep 2017, Vlastimil Babka wrote:

> > A follow-up change will set the pageblock skip for this memory since it is
> > never useful for either scanner.
> > """
> >
> >> Also there's now a danger that in cases where there's no direct
> >> compaction happening (just kcompactd), nothing will ever call
> >> __reset_isolation_suitable().
> >>
> >
> > I'm not sure that is helpful in a context where no high-order memory can
> > call direct compaction that kcompactd needlessly scanning the same memory
> > over and over is beneficial.
>
> The point is that if it becomes beneficial again, we won't know as there
> will be still be skip bits.
>

Why is kcompactd_do_work() not sometimes doing
__reset_isolation_suitable() in the first place, if only to reset the
per-zone migration and freeing scanner cached pfns? It seems fragile to
rely on other threads doing direct compaction to reset the per-zone state
of compaction.