page_alloc.c (b69a7288ea7bf171328f313f0edae629f50e3bdb) | page_alloc.c (af370fb8cb3031f20438f246798d5f0d98089f29) |
---|---|
1/* 2 * linux/mm/page_alloc.c 3 * 4 * Manages the free list, the system allocates free pages here. 5 * Note that kmalloc() lives in slab.c 6 * 7 * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds 8 * Swap reorganised 29.12.95, Stephen Tweedie --- 519 unchanged lines hidden (view full) --- 528 __count_vm_events(PGFREE, 1 << order); 529 free_one_page(page_zone(page), page, order); 530 local_irq_restore(flags); 531} 532 533/* 534 * permit the bootmem allocator to evade page validation on high-order frees 535 */ | 1/* 2 * linux/mm/page_alloc.c 3 * 4 * Manages the free list, the system allocates free pages here. 5 * Note that kmalloc() lives in slab.c 6 * 7 * Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds 8 * Swap reorganised 29.12.95, Stephen Tweedie --- 519 unchanged lines hidden (view full) --- 528 __count_vm_events(PGFREE, 1 << order); 529 free_one_page(page_zone(page), page, order); 530 local_irq_restore(flags); 531} 532 533/* 534 * permit the bootmem allocator to evade page validation on high-order frees 535 */ |
536void __free_pages_bootmem(struct page *page, unsigned int order) | 536void __meminit __free_pages_bootmem(struct page *page, unsigned int order) |
537{ 538 if (order == 0) { 539 __ClearPageReserved(page); 540 set_page_count(page, 0); 541 set_page_refcounted(page); 542 __free_page(page); 543 } else { 544 int loop; --- 4134 unchanged lines hidden --- | 537{ 538 if (order == 0) { 539 __ClearPageReserved(page); 540 set_page_count(page, 0); 541 set_page_refcounted(page); 542 __free_page(page); 543 } else { 544 int loop; --- 4134 unchanged lines hidden --- |