On 1/18/19 6:51 PM, Mel Gorman wrote: > Pageblock hints are cleared when compaction restarts or kswapd makes enough > progress that it can sleep but it's over-eager in that the bit is cleared > for migration sources with no LRU pages and migration targets with no free > pages. As pageblock skip hint flushes are relatively rare and out-of-band > with respect to kswapd, this patch makes a few more expensive checks to > see if it's appropriate to even clear the bit. Every pageblock that is > not cleared will avoid 512 pages being scanned unnecessarily on x86-64. > > The impact is variable with different workloads showing small differences > in latency, success rates and scan rates. This is expected as clearing > the hints is not that common but doing a small amount of work out-of-band > to avoid a large amount of work in-band later is generally a good thing. > > Signed-off-by: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx> Acked-by: Vlastimil Babka <vbabka@xxxxxxx>