diff options
Diffstat (limited to 'mm/page_alloc.c')
| -rw-r--r-- | mm/page_alloc.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c index b0a264628f69..f4600396fcd6 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -101,8 +101,6 @@ static void __free_pages_ok (struct page *page, unsigned int order) BUG(); if (page->mapping) BUG(); - if (!VALID_PAGE(page)) - BUG(); if (PageLocked(page)) BUG(); if (PageLRU(page)) @@ -295,8 +293,6 @@ static struct page * balance_classzone(zone_t * classzone, unsigned int gfp_mask BUG(); if (page->mapping) BUG(); - if (!VALID_PAGE(page)) - BUG(); if (PageLocked(page)) BUG(); if (PageLRU(page)) @@ -477,8 +473,10 @@ void __free_pages(struct page *page, unsigned int order) void free_pages(unsigned long addr, unsigned int order) { - if (addr != 0) + if (addr != 0) { + BUG_ON(!virt_addr_valid(addr)); __free_pages(virt_to_page(addr), order); + } } /* |
