On 2/14/24 23:04, Zi Yan wrote: > From: Zi Yan <ziy@xxxxxxxxxx> > > During migration in a memory compaction, free pages are placed in an array > of page lists based on their order. But the desired free page order > (i.e., the order of a source page) might not be always present, thus > leading to migration failures and premature compaction termination. Split > a high order free pages when source migration page has a lower order to > increase migration successful rate. > > Note: merging free pages when a migration fails and a lower order free > page is returned via compaction_free() is possible, but there is too much > work. Since the free pages are not buddy pages, it is hard to identify > these free pages using existing PFN-based page merging algorithm. > > Signed-off-by: Zi Yan <ziy@xxxxxxxxxx> > Reviewed-by: Baolin Wang <baolin.wang@xxxxxxxxxxxxxxxxx> > Tested-by: Baolin Wang <baolin.wang@xxxxxxxxxxxxxxxxx> > Tested-by: Yu Zhao <yuzhao@xxxxxxxxxx> Reviewed-by: Vlastimil Babka <vbabka@xxxxxxx> Thanks!