Skip to content

Commit

Permalink
mm: remove BUG_ON() in __isolate_free_page()
Browse files Browse the repository at this point in the history
Drop unneed comment and blank, adjust the variable, and the most important
is to delete BUG_ON().  The page passed is always buddy page into
__isolate_free_page() from compaction, page_isolation and page_reporting,
and the caller also check the return, BUG_ON() is a too drastic measure,
remove it.

Link: https://lkml.kernel.org/r/20220901015043.189276-1-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
Cc: David Hildenbrand <david@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Kefeng Wang authored and Andrew Morton committed Sep 12, 2022
1 parent b955aa7 commit 9a157dd
Showing 1 changed file with 3 additions and 11 deletions.
14 changes: 3 additions & 11 deletions mm/page_alloc.c
Original file line number Diff line number Diff line change
@@ -3600,16 +3600,11 @@ EXPORT_SYMBOL_GPL(split_page);

int __isolate_free_page(struct page *page, unsigned int order)
{
unsigned long watermark;
struct zone *zone;
int mt;

BUG_ON(!PageBuddy(page));

zone = page_zone(page);
mt = get_pageblock_migratetype(page);
struct zone *zone = page_zone(page);
int mt = get_pageblock_migratetype(page);

if (!is_migrate_isolate(mt)) {
unsigned long watermark;
/*
* Obey watermarks as if the page was being allocated. We can
* emulate a high-order watermark check with a raised order-0
@@ -3623,8 +3618,6 @@ int __isolate_free_page(struct page *page, unsigned int order)
__mod_zone_freepage_state(zone, -(1UL << order), mt);
}

/* Remove page from free list */

del_page_from_free_list(page, zone, order);

/*
@@ -3645,7 +3638,6 @@ int __isolate_free_page(struct page *page, unsigned int order)
}
}


return 1UL << order;
}

0 comments on commit 9a157dd

Please sign in to comment.