compaction.c (3109de308987ceae413ee015038d51e2a86c7806) | compaction.c (cff387d6a2949a46d78a4f558938ef7b4cccd41f) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * linux/mm/compaction.c 4 * 5 * Memory compaction for the reduction of external fragmentation. Note that 6 * this heavily depends upon page migration to do all the real heavy 7 * lifting 8 * --- 2277 unchanged lines hidden (view full) --- 2286 * want to trash just for a single high order allocation which 2287 * is even not guaranteed to appear even if __compaction_suitable 2288 * is happy about the watermark check. 2289 */ 2290 available = zone_reclaimable_pages(zone) / order; 2291 available += zone_page_state_snapshot(zone, NR_FREE_PAGES); 2292 compact_result = __compaction_suitable(zone, order, alloc_flags, 2293 ac->highest_zoneidx, available); | 1// SPDX-License-Identifier: GPL-2.0 2/* 3 * linux/mm/compaction.c 4 * 5 * Memory compaction for the reduction of external fragmentation. Note that 6 * this heavily depends upon page migration to do all the real heavy 7 * lifting 8 * --- 2277 unchanged lines hidden (view full) --- 2286 * want to trash just for a single high order allocation which 2287 * is even not guaranteed to appear even if __compaction_suitable 2288 * is happy about the watermark check. 2289 */ 2290 available = zone_reclaimable_pages(zone) / order; 2291 available += zone_page_state_snapshot(zone, NR_FREE_PAGES); 2292 compact_result = __compaction_suitable(zone, order, alloc_flags, 2293 ac->highest_zoneidx, available); |
2294 if (compact_result != COMPACT_SKIPPED) | 2294 if (compact_result == COMPACT_CONTINUE) |
2295 return true; 2296 } 2297 2298 return false; 2299} 2300 2301static enum compact_result 2302compact_zone(struct compact_control *cc, struct capture_control *capc) --- 778 unchanged lines hidden --- | 2295 return true; 2296 } 2297 2298 return false; 2299} 2300 2301static enum compact_result 2302compact_zone(struct compact_control *cc, struct capture_control *capc) --- 778 unchanged lines hidden --- |