Lines Matching refs:boundary_pfn
285 * @boundary_pfn: pageblock-aligned pfn that a page might cross
288 * @isolate_before: isolate the pageblock before the boundary_pfn
305 static int isolate_single_pageblock(unsigned long boundary_pfn, int flags,
315 VM_BUG_ON(!pageblock_aligned(boundary_pfn));
318 isolate_pageblock = boundary_pfn - pageblock_nr_pages;
320 isolate_pageblock = boundary_pfn;
346 * a free or in-use page across boundary_pfn:
348 * 1. isolate before boundary_pfn: the page after is not online
349 * 2. isolate after boundary_pfn: the page before is not online
352 * boundary_pfn and [start_pfn, boundary_pfn) are not online,
357 if (!pfn_to_online_page(boundary_pfn))
360 if (!pfn_to_online_page(boundary_pfn - 1))
364 for (pfn = start_pfn; pfn < boundary_pfn;) {
365 struct page *page = __first_valid_page(pfn, boundary_pfn - pfn);
371 * free pages in [start_pfn, boundary_pfn), its head page will
377 if (pfn + (1UL << order) > boundary_pfn) {
379 if (split_free_page(page, order, boundary_pfn - pfn))
395 if (head_pfn + nr_pages <= boundary_pfn) {