mirror of
https://github.com/torvalds/linux.git
synced 2024-11-22 03:48:59 +00:00
mm/compaction: set compact_cached_free_pfn correctly in update_pageblock_skip
Patch series "Fixes and cleanups to compaction", v2. This series contains random fixes and cleanups to free page isolation in compaction. This is based on another compact series[1]. More details can be found in respective patches. This patch (of 4): We will set skip to page block of block_start_pfn, it's more reasonable to set compact_cached_free_pfn to page block before the block_start_pfn. Link: https://lkml.kernel.org/r/20230803094901.2915942-1-shikemeng@huaweicloud.com Link: https://lkml.kernel.org/r/20230803094901.2915942-2-shikemeng@huaweicloud.com Signed-off-by: Kemeng Shi <shikemeng@huaweicloud.com> Reviewed-by: Baolin Wang <baolin.wang@linux.alibaba.com> Cc: David Hildenbrand <david@redhat.com> Cc: Mel Gorman <mgorman@techsingularity.net> Cc: Kemeng Shi <shikemeng@huawei.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
3a1060c261
commit
1695178900
@ -1717,7 +1717,8 @@ static void isolate_freepages(struct compact_control *cc)
|
||||
|
||||
/* Update the skip hint if the full pageblock was scanned */
|
||||
if (isolate_start_pfn == block_end_pfn)
|
||||
update_pageblock_skip(cc, page, block_start_pfn);
|
||||
update_pageblock_skip(cc, page, block_start_pfn -
|
||||
pageblock_nr_pages);
|
||||
|
||||
/* Are enough freepages isolated? */
|
||||
if (cc->nr_freepages >= cc->nr_migratepages) {
|
||||
|
Loading…
Reference in New Issue
Block a user