History

revert "mm: fix-up zone present pages"

Revert commit 7f1290f2f2a4 ("mm: fix-up zone present pages") That patch tried to fix a issue when calculating zone->present_pages, but it caused a regression on 32bit systems with HIGHMEM. With that change, reset_zone_present_pages() resets all zone->present_pages to zero, and fixup_zone_present_pages() is called to recalculate zone->present_pages when the boot allocator frees core memory pages into buddy allocator. Because highmem pages are not freed by bootmem allocator, all highmem zones' present_pages becomes zero. Various options for improving the situation are being discussed but for now, let's return to the 3.6 code.

Andrew Morton committed 13 years ago

Commit 55766461 parent 0f3c42f6 files · +1 −58Browse files

Showing the changes to include/linux (1 of 6 files). Show all

Unified · Split

include/linux/mm.h+0−4
@@ -1684,9 +1684,5 @@ static inline unsigned int debug_guardpage_minorder(void) { return 0; } · 1683 unmodified lines
16841684 static inline bool page_is_guard(struct page *page) { return false; }
16851685 #endif /* CONFIG_DEBUG_PAGEALLOC */
16861686
1687−extern void reset_zone_present_pages(void);
1688−extern void fixup_zone_present_pages(int nid, unsigned long start_pfn,
1689− unsigned long end_pfn);
1690−
16911687 #endif /* __KERNEL__ */
16921688 #endif /* _LINUX_MM_H */