• Mel Gorman's avatar
    mm, migrate: immediately fail migration of a page with no migration handler · 806031bb
    Mel Gorman authored
    Pages with no migration handler use a fallback handler which sometimes
    works and sometimes persistently retries.  A historical example was
    blockdev pages but there are others such as odd refcounting when
    page->private is used.  These are retried multiple times which is
    wasteful during compaction so this patch will fail migration faster
    unless the caller specifies MIGRATE_SYNC.
    
    This is not expected to help THP allocation success rates but it did
    reduce latencies very slightly in some cases.
    
    1-socket thpfioscale
                                            4.20.0                 4.20.0
                                  noreserved-v2r15         failfast-v2r15
    Amean     fault-both-1         0.00 (   0.00%)        0.00 *   0.00%*
    Amean     fault-both-3      3839.67 (   0.00%)     3833.72 (   0.15%)
    Amean     fault-both-5      5177.47 (   0.00%)     4967.15 (   4.06%)
    Amean     fault-both-7      7245.03 (   0.00%)     7139.19 (   1.46%)
    Amean     fault-both-12    11534.89 (   0.00%)    11326.30 (   1.81%)
    Amean     fault-both-18    16241.10 (   0.00%)    16270.70 (  -0.18%)
    Amean     fault-both-24    19075.91 (   0.00%)    19839.65 (  -4.00%)
    Amean     fault-both-30    22712.11 (   0.00%)    21707.05 (   4.43%)
    Amean     fault-both-32    21692.92 (   0.00%)    21968.16 (  -1.27%)
    
    The 2-socket results are not materially different.  Scan rates are
    similar as expected.
    
    Link: http://lkml.kernel.org/r/20190118175136.31341-7-mgorman@techsingularity.netSigned-off-by: default avatarMel Gorman <mgorman@techsingularity.net>
    Acked-by: default avatarVlastimil Babka <vbabka@suse.cz>
    Cc: Andrea Arcangeli <aarcange@redhat.com>
    Cc: Dan Carpenter <dan.carpenter@oracle.com>
    Cc: David Rientjes <rientjes@google.com>
    Cc: YueHaibing <yuehaibing@huawei.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    806031bb
migrate.c 76.7 KB