revert "mm: fix-up zone present pages"
Revert commit 7f1290f2 ("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. Cc: Jianguo Wu <wujianguo@huawei.com> Cc: Jiang Liu <jiang.liu@huawei.com> Cc: Petr Tesarik <ptesarik@suse.cz> Cc: "Luck, Tony" <tony.luck@intel.com> Cc: Mel Gorman <mel@csn.ul.ie> Cc: Yinghai Lu <yinghai@kernel.org> Cc: Minchan Kim <minchan.kim@gmail.com> Cc: Johannes Weiner <hannes@cmpxchg.org> Acked-by:David Rientjes <rientjes@google.com> Tested-by:
Chris Clayton <chris2553@googlemail.com> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
Showing
- arch/ia64/mm/init.c 0 additions, 1 deletionarch/ia64/mm/init.c
- include/linux/mm.h 0 additions, 4 deletionsinclude/linux/mm.h
- mm/bootmem.c 1 addition, 9 deletionsmm/bootmem.c
- mm/memory_hotplug.c 0 additions, 7 deletionsmm/memory_hotplug.c
- mm/nobootmem.c 0 additions, 3 deletionsmm/nobootmem.c
- mm/page_alloc.c 0 additions, 34 deletionsmm/page_alloc.c
Loading
Please register or sign in to comment